网站对爬虫的限制,最主要依赖于每个IP(或每个用户)的访问频次,过高频率的访问会被网站限制访问,因此我们应该针对每个目标地址的访问频率限定。
常用方法是设置间隔时间,抓取网页之后,停顿固定时间之后,再次进行抓取。
例子如下:
首先编写一个模块文件规定网页抓取间隔时间,命名为global_var.py,
headers = {
你抓取网页的headers
}
crawl_interval = 2.5 #定义网页抓取时间间隔为2.5s
除了导入刚刚编写成的模块之外,还要导入模块time利用sleep函数暂停给定的秒数后执行程序,
import time
import global_var
time.sleep(global_var.crawl_interval) #和requests一起写进函数,只不过它放在最后面
其他步骤和普通的爬虫一样。