动态网页抓取(使用爬虫采集网站时被封IP的几种解决方法方法)

优采云 发布时间: 2021-10-24 03:07

  动态网页抓取(使用爬虫采集网站时被封IP的几种解决方法方法)

  本文文章主要介绍了几种解决爬虫使用时被封IP的方法的相关资料采集网站。有需要的朋友可以参考。

  

  使用爬虫时被封IP的几种解决方案采集网站

  方法1.

  使用多个 IP 代理:

  1.必须要有IP,比如ADSL。有条件的话,其实可以从机房申请额外的IP。

  2. 在外网IP的机器上部署代理服务器。

  3.你的程序,用轮换训练代替代理服务器访问网站你想要的采集。

  益处:

  1.程序逻辑变化不大,只需要agent功能。

  2.根据对方的网站屏蔽规则,你只需要增加更多的代理。

  3. 即使具体的IP被屏蔽了,你只要把代理服务器下线就可以了,程序逻辑不需要改动。

  方法2.

  网站的一小部分防范措施相对较弱,可以通过伪装IP和修改X-Forwarded-For来绕过。

  大部分网站,如果你想频繁获取,通常你还需要更多的IP。

  我比较喜欢的解决方案是在VPS中配置多个IP,通过默认网关切换切换到IP,比HTTP代理效率高很多,估计大多数情况下比ADSL切换效率更高。

  方法3.

  ADSL+脚本,监控是否被阻塞,然后不断切换ip设置查询频率限制

  正统的做法是调用网站提供的服务接口。

  方法4.

  国内ADSL是王道。申请更多线路,分布在不同的电信区。最好能跨省市。自己写断线重拨组件,自己写动态IP跟踪服务,远程硬件复位(主要针对ADSL modem,防止它宕机),剩下的任务分配,数据恢复,都不是什么大问题。

  方法5.

  1 用户代理伪装和轮换

  2 使用兔子代理ip和轮换

  3 cookie 的处理,一些 网站 对登录用户有更宽松的政策

  友情提示:考虑爬虫给别人带来的负担网站,做一个负责任的爬虫:)

  方法6.

  尽可能模拟用户行为:

  1、UserAgent 变化频繁;

  2、 设置更长的访问时间间隔,将访问时间设置为随机数;

  3、 访问页面的顺序也可以是随机的。

  方法7.

  网站 关闭一般是根据单位时间内访问特定IP的次数。

  我按照目标站点的IP对采集的任务进行分组

  通过控制单位时间内每个IP发出的任务数量,避免被阻塞。

  当然,这个前提是你采集很多网站。如果只是采集一个网站,那么只能通过多个外部IP来实现。

  方法8.

  履带爬行压力控制;考虑使用代理访问目标站点。

  降低爬取频率,设置更长的时间,访问时间使用随机数

  频繁切换UserAgent(模拟浏览器访问)

  多页数据,随机访问然后抓取数据更改用户IP。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线