2006-10-23

用Python写一个小小的爬虫程序 (Python Spider)

Python有一个urllib的库,可以很方便的从给定的url抓取网页,以下这段程序实现了抓取一个url并存到指定文件的功能:爬虫工作的基本原理就是,给定一个初始的url,下载这个url的网页,然后找出网页上所有满足下载要求的链接,然后把这些链接对应的url下载下来,然后再找下载下来的这些网页的url,我们可以用广度优先搜索实现这个算法,不过,首先得有一个函数找出网页上所有的满足要求的url,下面这个例子用正则表达式找出url.

最后就是广度优先搜索了,这个实现起来也很简单:
作者用上面的算法,感觉速度还行,1小时可以抓10000多网页,可以满足小型系统的要求。

2 条评论:

  1. 我参考了你的代码,对ftchinese.com进行了抓取,主要是为了学习英语,这个网站提供的新闻是双语的,down到自己电脑后看起来更方便些。
    谢谢你。
    另外,python的资料确实比较散。

    回复删除
  2. urllib2要运行的不错,主要是错误处理,如果不捕捉异常,就会出现爬不动的情况

    回复删除