教你动态IP下避免爬虫被墙的技巧

 时间:2024-10-14 13:09:16

1、修改User-Agent最常见的就是伪装浏览器,修改User-Agent(用户代理)。User-Agent是指包含浏览器信息、操作系统信息等的一个字符串,也称之为一种特殊的网络协议。服务器通过它判断当前访问对象是浏览器、邮件客户端还是网络爬虫。在request.headers里可以查看user-agent,关于怎么分析数据包、查看其User-Agent等信息,这个在前面的文章里提到过。具体方法可以把User-Agent的值改为浏览器的方式,甚至可以设置一个User-Agent池(list,数组,字典都可以),存放多个“浏览器”,每次爬取的时候随机取一个来设置request的User-Agent,这样User-Agent会一直在变化,防止被墙。

2、设置下载等待时间/下载频率大规模集中访问对服务器的影响较大,爬虫可以短时间增大服务器负载。这里需要注意的是:设定下载等待时间的范围控制,等待时间过长,不能满足短时间大规模抓取的要求,等待时间过短则很有可能被拒绝访问。(1) 在之前“从url获取HTML”的方法里,对于httpGet的配置设置了socket超时和连接connect超时,其实这里的时长不是绝对的,主要取决于目标网站对爬虫的控制。(2) 另外,在scrapy爬虫框架里,专有参数可以设置下载等待时间download_delay,这个参数可以设置在setting.py里,也可以设置在spider里。

  • 关闭outlook邮件附件预览功能防止病毒快速传播
  • 如何申请南宁市公租房、廉租房
  • 粤菜之泡椒田鸡煲的简单做法
  • 美式灯具简介
  • 天天酷跑怎么升级
  • 热门搜索
    运动减肥法 一件什么的事作文 如履薄冰是什么意思 什么人什么什么 reserved是什么意思 12月是什么星座的 magazine是什么意思 相敬如宾什么意思 人民公社化运动 梧桐树的叶子像什么