写了个垃圾采集,与各位分享下
是一个漫画站的采集,很垃圾,也没优化速度,只是给大家做为参考,哈哈~~漫画站地址:http://www.dmzzz.com
只要在程序里修改下要采集的漫画地址就可以了!
平台要求:PHP5
<?php
$url = "http://www.dmzzz.com/ComicInfo/BaDao/Dmzzz_Url.htm";
$r = file_get_contents($url);
preg_match_all("/href='\/ComicInfo\/BaDao\/([\d]+)\.htm'>(.+)<\/a><\/div>/isU", $r, $c);
$count = count($c);
for($i=0;$i<=$count;$i++) {
$url1 = "http://www.dmzzz.com/ComicInfo/BaDao/" . $c[$i] . ".htm";
$r1 = file_get_contents($url1);
preg_match_all("/Dmzzz_img_path\[([\d]+)\] = '\/comicdate2\/comicabcd\/a-d\/bd\/([\d]+)\/(.+)';/isU", $r1, $c1);
$count1 = count($c1);
$path = "./霸刀/" . $c[$i] . "/";
if(!file_exists($path)) {
if(mkdir($path)) {
ob_flush();
flush();
sleep(1);
echo $path . " <font color=\"blue\">建立成功</font><br>";
} else {
ob_flush();
flush();
sleep(1);
echo $path . " <font color=\"red\">建立失败</font><br>";
}
}
for($j=0;$j<=$count1;$j++) {
$url2 = "http://60.191.239.185/comicdate2/comicabcd/a-d/bd/" . $c1[$j] . "/" . $c1[$j];
$r2 = file_get_contents($url2);
$file = $path . $c1[$j];
if(file_exists($file)) break;
if(file_put_contents($file, $r2)) {
ob_flush();
flush();
sleep(1);
echo $file . " <font color=\"green\">采集成功</font><br>";
} else {
ob_flush();
flush();
sleep(1);
echo $file . " <font color=\"red\">采集失败</font><br>";
}
}
}
?>
我记得金光是有干扰码的,所以,附上一份附件啦 采集过程图片:
不足之出:没有提交表单,不方便自己修改,没有做太多判断,所以会出现把目录做为图片采集的情况而出现错误
还有就是没有做目录判断,所以如果已经有了目录,那么就会出现错误 呵呵~~~
我都人肉更新的 LZ还是挺强的!:) 呵呵,其实我也不是为了更新我的站,我现在采集东西很多都是采集到我的本本里,在本地看啦
以前也是人肉弄,但是现在学了PHP了,再人肉可真能说是白学了 原帖由 ycrake 于 2007-6-26 12:44 发表 http://www.jgwy.net/bbs/images/common/back.gif
LZ还是挺强的!:)
嘿嘿,谢谢~~ 又发现一个问题,就是PHP的超时问题。。。郁闷,因为为了能够时时观察采集情况,所以用了逐行输出
但是却会引起超时问题。。。。郁闷 :( :( :(继续 努力啊 。。。。偶一直在努力,8过现在考试了,木时间呀 本地的话
set_time_limit(0);