Filed under: Spider | 1 Comment »
Posted on 12月 12th, 2007 由 毛毛虫
在网上看到很多简单的采集教程,尤其是针对图书网站的比较多,但附带实例的并不多,在看了一篇针对八路中文网的抓取分析后,决定针对这个网站,写一个简单的抓取教程,并附带实例。由于俺偷懒,文中很多分析都是来自《利用PHP制作简单的内容采集器》,俺只是进一步优化了他的流程,并完成了代码实例的编写。
采集程序其实并不难做,只要分析清楚流程,然后使用合适的正则来取到你想要的内容就可以了。废话不说了,教程开始:
1.分析入口:
多打开几本书后,可以发现书名的基本格式是:http://www.86zw.com/Book/书号/Index.aspx。于是得出:
- $BookId='1888';
- $index="http://www.86zw.com/Book/".$BookId."/Index.aspx";//组合书目首页URL
2.打开页面:
- $contents=file_get_contents($index);
3.抓取图书信息页:
- //抓取图书相关信息
- preg_match_all("/<div id=\"CrBookTitle\"><span class=\"booktitle\">(.*)<\/span><\/div>/is",$contents,$Arraytitle);
- preg_match_all("/【<a href=\"(.*)\"><font color=\"#CC0000\">点击阅读<\/font><\/a>】/is",$contents,$Arraylist);
- unset($contents);
- $title=$Arraytitle[1][0];//书名
- $list="http://www.86zw.com".trim($Arraylist[1][0]);//列表页URL
