<?php
function GrabImage($url,$ext){
if(substr($url,0,4) != 'http'){//如果图片的加载地址不是http开头的则返回false
return false;
}
if($ext != ".jpg" && $ext != ".bmp" && $ext != ".png" && $ext != ".jpeg"){//筛选图片类型
echo "格式不支持!";
return false;
}
$filename = './'.time().$ext;//以当前时间戳命名保存图片
//开始保存
ob_start();
readfile($url);
$img = ob_get_contents();
ob_end_clean();
$size = strlen($img);
$fp = fopen($filename , "a");
fwrite($fp, $img);
fclose($fp);
sleep(1);//延时1秒,防止时间戳一致导致图片命名重复
return $filename;
}
$url = "https://www.baidu.com/";//目标网址
$html = file_get_contents($url);
preg_match_all("/\"[^\"]*[^0]\.(?:png|jpg|bmp|jpeg)\"/", $html, $text);//爬图片的正则表达式
foreach ($text as $key => $value) {
foreach ($value as $img) {//$img为图片的加载地址,含有双引号;
echo "<img src=" . $img . " />";
$key++;
$img = substr($img,1,-1);//将$img中的双引号去掉
$ext = strrchr($img, '.');//获取图片的类型(.png|.jpg|.bmp|.jpeg)
GrabImage($img,$ext);//保存图片
}
}
?>
一个简单的爬虫
猜你喜欢
转载自blog.csdn.net/qq_37715335/article/details/81809087
今日推荐
周排行