php curl抓取网页指定内容( PHP通过正则表达式判断内容中的远程图片的资料请关注脚本之家)
优采云 发布时间: 2022-02-06 10:18php curl抓取网页指定内容(
PHP通过正则表达式判断内容中的远程图片的资料请关注脚本之家)
php中通过正则表达式下载内容中远程图片的函数代码
更新时间:2012年1月10日12:01:30 投稿:mdxy-dxy
下午抽空写了个程序,用PHP正则表达式判断内容中的图片,下载并保存不在本域名下的图片
这个程序实际上是“小偷程序”的重要组成部分。这部分程序只是下载远程图片的部分。程序比较简单,大部分部分都有注释。
if (preg_match_all("/http://[^ "']+[.jpg|.gif|.jpeg|.png]+/ui",stripcslashes($content),$aliurl)){
$i=0; //多个文件++
while(list($key ,$v) = each($aliurl[0])){
//echo $v."<br />";
$filetype = pathinfo($v, PATHINFO_EXTENSION); //获取后缀名
$ff = @file_get_contents($v); //获取2进制文件内容
if(!stripos($v,"jb51.net")){//判断是否是自己网站下的图片
if (!empty($ff)){ //获取到文件就执行下面的操作
$dir = "upload/".date("Ymd")."/";//指定新的存储路径
if (!file_exists($dir)){//判断目录是否存在
@mkdir($dir,511,true); //创建多级目录,511转换成十进制是777具有可执行权限
}
$nfn = $dir.date("Ymdhis").$i.".".$filetype; //构建文件的新名字
$nf = @fopen($nfn,"w"); //创建文件
fwrite($nf,$ff); //写入文件
fclose($nf); //关闭文件
$i++; //多文件++
echo "";
$content = str_replace($v,$nfn, $content);//替换content中的参数
}else{//获取不到图片则替换为默认图片
$content = str_replace($v,"/upload/201204/20120417213810742.gif", $content);//替换content中的参数
}
}
}
}
PHP通过正则表达式下载图片到本地实现代码
请参阅下面的示例
<p>
function get_pic_url($content){
$pattern="/