作者:秋梯田那路77 | 来源:互联网 | 2018-03-21 23:47
利用php来采集图片方法很简单本实例使用了fopen来保存文件了,但在此php入门小编建义大家不要使用此方法来获取,如果数据量大量fopen函数性能比curl差得远了,所以大家可尝试改进使用cu...
利用php来采集图片方法很简单本实例使用了fopen来保存文件了,但在此php入门小编建义大家不要使用此方法来获取,如果数据量大量fopen函数性能比curl差得远了,所以大家可尝试改进使用curl来处理。
";
// }
/*
实际应用中,我们可能会采集某个站点的内容,比如产品信息,包括采集防盗链的图片保存到网站上服务器上。这时我们可以使用正则匹配页面内容,将页面中相匹配的图片都找出来,然后分别下载到网站服务器上,完成图片的采集。以下代码仅供测试:
*/
function get_pic($cont, $path) {
$pattern_src = &#39;/<[img|IMG].*?src=[\&#39;|\"](.*?(?:[.gif|.jpg]))[\&#39;|\"].*?[/]?>/&#39;;
$num = preg_match_all($pattern_src, $cont, $match_src);
$pic_arr = $match_src[1]; //获得图片数组
foreach ($pic_arr as $pic_item) { //循环取出每幅图的地址
save_pic($pic_item, $path); //下载并保存图片
echo "[OK]..!
";
}
}
//然后我们通过分析页面内容,将主体内容找出来,调用get_pic()实现图片的保存。
//我们采集太平洋电脑网上一篇关于手机报道内容页的图片 php100.com
$url = "你的网地址";
$cOntent= file_get_contents($url); //获取网页内容
$preg = &#39;#(.*)
#iUs&#39;;
preg_match_all($preg, $content, $arr);
$cOnt= $arr[1][0];
get_pic($cont, &#39;img/&#39;);
/*
以上代码笔者亲测,可以采集图片,但是还有些场景没考虑进去,比如目标网站做了302多次跳转的,目标网站做了多种防采集的,留给喜欢折腾的同学去试试吧。
*/
?>
教程网址:
欢迎收藏∩_∩但请保留本文链接。