经常要仿人家的站点 但是网页另存为网站页面,其中所有在CSS里出现的背景图不能被一同下载;
因此写了这个PHP 比较简单; 使用的时候要修改里面的 几个地方就可以了;先上代码。。。
//获取图片函数
function GetImage($url, $filename = "") {
if ($url == "") {
return false;
}
if ($filename == "") {
$ext = strrchr ( $url, "." );
if ($ext != ".gif" && $ext != ".jpg" && $ext !=".png") {
return false;
}
$filename = substr(strrchr($url, "/" ), 1);
}
//文件 保存路径
ob_start ();
readfile ( $url );
$img = ob_get_contents ();
ob_end_clean ();
$size = strlen ( $img );
//文件大小
$fp2 = @fopen ( $filename, "a+" );
fwrite ( $fp2, $img );
fclose ( $fp2 );
return $filename;
}
//遍历te目录里的所有css文件 把它的CSS都放到当前文件夹 ./ta下
$filename_arr = glob("./ta/*.css");
foreach($filename_arr as $filename){
//echo $filename."<br>";
$ss = file_get_contents($filename);
//这里要写出你要匹配的正则 修改2
$reg = "/\/images(.*)\.(png|jpg|gif)/isU";
preg_match_all($reg,$ss,$matches);
// 匹配到的 是 images/***.jpg 之类的 当然要加上它的实际路径 实际路径有的时候一定是根目录 可根据的它css路径可以轻松找到
foreach($matches[0] as $match){
echo "http://www.hzyou.com/templets/default/$match"."<hr>";
GetImage ( "http://www.hzyou.com/templets/default$match");
}
}
//测试函数
//GetImage ( "http://shanghai.hzyou.com/uploads/120810/1-120Q0003114O9.jpg" );
?>