不会正则下载暴漫好痛苦,唯一的正则是网上找的,最后还是用explode来处理了,小弟新人,求大牛改正。 无 ?php/** * 正则表达式匹配需要的图片 * @return ArrayIterator $arr */function pregIMG($str){//$str ='a href="/articles/7442969" target="_blank"i
不会正则下载暴漫好痛苦,唯一的正则是网上找的,最后还是用explode来处理了,小弟新人,求大牛改正。
<?php
/**
* 正则表达式匹配需要的图片
* @return ArrayIterator $arr
*/
function pregIMG($str){
//$str ='<a href="/articles/7442969" target="_blank">@@##@@</a>';
$pattern='/@@##@@/i';
preg_match_all($pattern,$str,$matchs);
return $matchs;
}
/**
* 查找某个页面的jpg
*/
function getIMG($url,$dir){
if (empty($url)) return false;
$contents = file_get_contents($url);
$data = pregIMG($contents);
$jpgs = $data[1];
unset($data);
$data = array();
foreach ($jpgs as $k => $v){
$t = explode('/', $v);
if ($t[3] == 'large'){
$data[$k] = $v;
}
}
if(!file_exists($dir) || !is_dir($dir)){
mkdir($dir,0777);
}
$num = 1;
foreach ($data as $v){
copy($v, $dir.'/'.time(). rand(10,100).'.jpg');
usleep(1);
$num++;
}
return $num;
}
function getBaoZou($page=1){
$url = "http://baozoumanhua.com/tucao/fresh/page/".$page."?sv=1395827058";
$dir = "public";
return getIMG($url, $dir);
}
function getMoreBaoZou($page){
//下载前10页
$num = 0;
for ($i = 1;$i < $page; $i++){
$num += getBaoZou($i);
}
echo '一共下载了'.$num.'张暴走漫画';
}
getMoreBaoZou(10);//获取前10页的暴走漫画
?>
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号