【Scrapy】一只健壮的爬虫是怎样炼成的

  • Post author:
  • Post category:其他




一只健壮的爬虫是怎样炼成的

Python新人,爬虫玩的多了,渐渐的也有了自己的一些感悟,这里不谈具体操作,就写了几条自己的总结,每一条背后都是失败的经验教训,当你把爬虫“放心”的运行一晚上后,一大早起来发现程序早就异常死掉了,很多都没爬到时,你就知道下面这些建议的意义了。

这里写图片描述

1.爬虫必须

增加容错处理

,不能因为一个错误就终止整个程序;

2.重要的内容请时刻

保存为文件

,防止程序异常终止时,丢失所有已爬取信息;

3.最好

增加错误清单

:当面对大量数据时,很难说一次就能成功爬取全部内容,当产生不期的错误时,将爬取失败的此条链接保存下来(文件),以便于后面分析错误原因和再次爬取

4.最好能

分步骤爬取

,减少失败风险,如第一步爬取所有链接,第二步再爬取所有链接内的内容;

5.爬取过程适当

显示关键点信息

(如成功访问网页后可显示网页title),便于知道每一小段程序运行状态,就算出错了也能知道错在那一块。

6.优秀的爬虫

多次爬取不会重复

:“不会重复”是指不产生重复内容,也不重复爬取。最好的爬虫是能够在程序异常中断后,再启时可以从任何位置开始爬取;次之的爬虫则是

每次爬取时增加重复判断功能

,比如爬虫爬取一部分后意外中断或卡住,那么再次爬取时可以读取之前爬取的文件列表,将这部分已爬取的从整体中去除(用python的差集运算),爬取未爬取的即可。

7.人道主义,

爬取不可太频繁

占用网站服务器,也是为了避免自己被反爬限IP



版权声明:本文为xiangxiang613原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。