请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

爬取登录的网站是否有必要构建UA池与IP代理池

老师,您好。
我的疑问是一个登录的用户不可能短时间内频繁的切换User-Agent与IP,那么服务端是否可以通过这个机制来制定反爬策略?比如监测账户短时间内IP和User-Agent的变化次数,如果超过某个阈值,就把这个账户的访问识别为一个爬虫程序。
这样子反而导致我们的UA代理和IP代理成为服务端识别爬虫的手段,我们如果只设置下载延迟参数,控制爬取的速度,这样反反爬的效果是否会更好?

正在回答

1回答

bobby 2019-10-22 10:44:50

其实你如果作为一个开发者和网站你已经想到了一些反爬的措施,就是通过你这种方法来做,这样做看似可行,但是从另一个角度来讲这样做有不小的风险:

第一点:对于一个局域网来说(校园网和大量的网吧),这些局域网中的每个用户对外的ip都是同一个ip,这样你如何将用户和ip绑定起来?同一个用户绑定到同一个ip 

 第二点:很多局域网的ip都是动态分配的,比如一个小区的对外ip可能2个小时就变动一次,那么这样做那么因为ip变动了就说我是爬虫,这样不合理吧


通过上面你可以看到,很多看似很简单的反爬策略,为什么很多大公司居然不用,如果对http协议和计算机网络协议理解了的话就会发现背后的原因了,这些也是分析爬虫可行性和反爬可行性的理论依据

0 回复 有任何疑惑可以回复我~
  • 提问者 慕丝146315 #1
    一个小区的对外ip可能2个小时就变动一次,但这变化周期还是比较长的,而我们的爬虫程序如果设置了IP代理池,那它变化的速度就快多了,一分钟可能就变化很多次。此时服务端认为这是一个爬虫程序,然后向它发出警告信息,说账户异常,通过让用户重新登录(而不是封IP)来制定反爬策略,这样风险是不是就降低很多?
    回复 有任何疑惑可以回复我~ 2019-10-22 11:10:43
  • bobby 回复 提问者 慕丝146315 #2
    理论上可以这样,但是即使这样也只能做提示,而不是直接封号,所以能看到很多网站经常会弹出验证码输入的逻辑。
    回复 有任何疑惑可以回复我~ 2019-10-23 14:00:26
  • 提问者 慕丝146315 回复 bobby #3
    好的,谢谢老师
    回复 有任何疑惑可以回复我~ 2019-10-23 15:02:44
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信