不是我,是它。刚刚放出了一只小爬虫,完成了任务。它爬了4,411个页面,有5个因为http连接超时而不成功,都是外国的站点,这个比较正常。算下来成功率很高的了。
看了一下log,不同站点响应速度有差别,总体来说,每个页面抓取时间平均约为2秒钟;接着分析页面平均花了0.7秒,比较欣喜,在这些小规模应用上,BeautifulSoup 的效能完全令人满意的;然后其余的数据库操作大概用了半秒钟。
总体来说,一个页面抓取和分析和数据存储任务大概就要3.2秒。
再进一步总结:
- python是很适合做这类光荣的小爬虫任务的。
- BeautifulSoup 真的很方便,我一口气写了30多个站点的抓取规则,一开始一边写一边祈祷这日子赶快结束,写到后来发现还是觉得不算无趣的。那种你看一眼html代码就知道应该如何写并且一下手就准确无误的感觉是很爽的。要知道有些网站的html写的很变态,上个世纪的html风格都有。
- GAE好多限制,不得不将代码重构了一遍,迁移到纯粹的python环境下。关键是好多个数据表,他们之间关系复杂,用关系数据库(比如Mysql)最好。GAE上好不容易处理,都快把我弄疯掉了,比如那个在SQL里面很容易处理的PK/AI啊,GAE得自己写个function去保证唯一并自增,真是很傻的
- 小型的web应用,还是PHP最方便。信手拈来,想怎么搞就这么搞,写PHP代码都不用构思的,心里想着目标和路径,一气呵成,连debug都省了。
爬虫,就是crawler。比较恶心蜘蛛,还是称之为爬虫好,当然,更温情的是叫机器人。
PS,百度最恶心了,它家的爬虫叫baiduspider,
google的最好,所以他叫googlebot
yahoo的最恐怖,叫yahoo slurp(吸血鬼啊!?)
bing的想向google大神发起冲击,所以也叫bot,bing MSNBot (呃,不过貌似在破烂的msn search年代就用bot这个称谓)
—————————华丽之分割线———————————–
不知不觉已经凌晨了,外面有人在吵架,上海人平常说话就像吵架,吵架的时候就像拆楼。不过我一定睡的着,你就继续吵吧~
并且呢,上海人吵闹似乎都乐于摆出来给大家观瞻的,例如那个叫新老娘舅的节目
能不能提供代码学习一下呢,零起步学习gae呢,感谢
mail/gtalk:frederick.mao@gmail.com
博主可否将爬虫的代码发给我参考一下呢?自己做项目急需要。。。万分感谢。。。如果你在北京,而且又在西直门附近可以联系我,我请吃饭。老师的项目要用到GAE写爬虫。。。万分感谢。。。可以直接发送到我的邮件
您好,野草想在GAE上用Python抓取stock.hexun.com页面上的“每日市场数据”的内容,不知可否给分享一个能抓取复杂页面的Python代码?
非常感谢:P)