php采集图片的一个实例代码

我们需要做采集,首先要了解正则表达式,在这里我们用到的是-phpQuery。phpQuery用来匹配html中的内容比正则简单太多了,只要会jquery,使用起来几乎无障碍。这里只是提供一个demo实例,可能随着原网址内容的调整无法采集到内容,具体大家可以尝试下。 ?phpre
我们需要做采集,首先要了解正则表达式,在这里我们用到的是-phpQuery。phpQuery用来匹配html中的内容比正则简单太多了,只要会jquery,使用起来几乎无障碍。这里只是提供一个demo实例,可能随着原网址内容的调整无法采集到内容,具体大家可以尝试下。
<?php
	require './phpQuery.php';
	
	//获取远程图片
	function curl_file_get_contents($url,$from){
		//初始化curl会话
		$ch = curl_init();
		//设置一个cURL传输选项。
		curl_setopt($ch, CURLOPT_URL, $url);					//目标 
		curl_setopt($ch, CURLOPT_TIMEOUT, 2);
		//curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_);	 
		curl_setopt($ch, CURLOPT_REFERER,$from);			//伪造来路  
		curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
		$result = curl_exec($ch);
		curl_close($ch);
		return $result;
	}
 
	
	//载入文档
	phpQuery::newDocumentFile('https://list.jd.com/list.html?cat=670,671,672');
	$list = pq('li.gl-item');
	
	
	
	$from = 'http://list.jd.com/list.html?cat=670,671,672';
	for($i=0;$i<count($list);$i++){
		$src = pq($list)->eq($i)->find('.p-img')->find('img')->attr('src');
		
		if(!$src){
			$src = pq($list)->eq($i)->find('.p-img')->find('img')->attr('data-lazy-img');
		}
 
		
		
		$src = str_replace('/n7/','/n1/',$src);
		$result = curl_file_get_contents('http:'.$src,$from);
		file_put_contents('./images/'.basename($src), $result);
	}
?>
 
本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

php数据处理:数组根据某字段进行分组,实例代码如下: /** * @description:根据数据 * @param {dataArr:需要分组的数据;keyStr:分组依据} * @return: */ protected function dataGroup(array $dataArr,string $keyStr) :array { $newArr=[]; foreach ($data
input file上传图片设置的实例代码 div纯input与type/div input type="file" div指明需要图片/div input type="file" accept='image/*' div指明需要多张图片/div input type="file" multiple accept='image/*' div指明调用摄像头获取图片/div input type="fil
$base64为图片的编码字符串 preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64, $result);$type = $result[2]; //获取图片的类型jpg png等$name = ”xxxx".".$type; //图片重命名$savepath = ‘C:/'.$name; //图片保存目录file_put_contents($savepat
文件发送的代码如下: ?$url = 'http://127.0.0.1/fujian/jieshou.php'; // 目标URL$filePath2 = iconv("utf-8","gb2312",'D:/MYOA/webroot/fujian/1/副本.txt'); // 文件路$filePath1 = iconv("utf-8","gb2312",'D:/MYOA/webroot/fujian/1/1.txt'); // 文件
PHP支持许多的函数,其中一些函数完全可以将字符串,制作为图片,将画布背景放上一些乱码,再挑选四个数字(你也可以添加字母,但是那样会比较花)。按照不同的角度放在画布上。具体代码如下: ?php//设置字符集header("Content-Type:text/html;charset=utf-8
php获取数组中某一个元素的值,并用逗号分隔 //打印方法function pp($ay){echo "pre";print_r($ay);}//定义数组$user_list=array('0'=['id'=1,'name'='刘德华'],'1'=['id'=2,'name'='张学友'],'2'=['id'=3,'name'='黎明'],'3'=['id'=4,'name'='郭富城']);pp(