看到了网上有不少的长途图片生存到当地的要领,晚上就随手用php写了一个函数,可以操作url抓取指定的网页,然后网页内的图片批量抓取并生存到当地。成果的实现很简朴,稍微变通一下就可以用到其它处所了,好比生存网上复制的文章内,图片也随之生存到当地。
php生存长途图片到当地的函数<?php function save_img($html,$host){ //正规匹配HTML代码中的img地点 preg_match_all('#<img.*?src="([^"]*)"[^>]*>#i', $html, $match); foreach($match[1] as $imgurl){ //检测图片地点的全法性 //这里可以本身写法则, if(strpos($imgurl, 'http') !== false ){ $arcurl = $imgurl; } else { $arcurl = $host.$imgurl; } $img = file_get_contents($arcurl); if(!empty($img)) { //随机文件名 $fileimgname = time().rand(1000,9999).".jpg"; $filecachs="/".$fileimgname; //生存图片随处事器 @file_put_contents($filecachs, $img ); } } return true; } ?>函数说明:
1、函数的传入参数,为一串含有html代码的网页源码与抓网站的网址
2、网页的源码中,必必要包括 img html标签
3、函数正规匹配 img 标签内里的图片地点
4、操作图片地点,抓取图片并生存到当地
5、假如长途图片有防盗链,是无法抓取到的
6、关于破解图片防盗链接,可以搜索本博客的相关文章
函数挪用:<?php $url = ''; $html = file_get_contents($url); save_img($html,$url); ?>