python入门吧 关注:2,532贴子:15,776
  • 4回复贴,共1

通过什么识别爬虫身份?

只看楼主收藏回复

很多网络爬虫爬着就爬不动了,使用了代理IP,也依然败下阵来,那么问题到底出在哪呢?一般来说,网站会通过以下几个方面来识别对方是爬虫还是真实用户,让我们一起来看看吧。


1楼2020-09-10 17:55回复
    一、单一IP非常规的访问频次
    我们经常会遇到这样一种情况,提示“刷新频率过快,请歇一会”,这都是网站为了缓解压力才对“用户”作出的限制。而爬虫相对于真实用户来说访问的频次更快,如果单一IP访问频次非常高,那么将会被判为“爬虫”,进而受到限制。


    2楼2020-09-10 17:56
    回复
      二、单一IP非常规的数据流量
      当单一IP的数据流量非常大时,也会引起网站的注意。说到数据流量有些朋友就会有疑问了,下载站的数据流量大也是很正常的。这里说的数据流量不只是单一的下载数据流量,而是大量的并发请求。高并发请求很容易对服务器造成高负荷,所以受到限制也是很正常的。为了避免这个因这个原因被封可以用个ip池量大的http比如ipidea每日覆盖全球的ip资源。


      3楼2020-09-10 17:56
      回复
        三、headers头部校验
        除了上面比较明显的爬虫行为,网站还会校验headers。headers头部的参数很多,其实也容易伪装,但有些初学者往往会忽略。比较常见的是User-Agent、Referer这两个参数,不同的浏览器有不同的User-Agent,访问来源也各不相同,如果不注意的话,很容易被识别。


        4楼2020-09-10 17:56
        回复
          四、链接
          我们知道,爬虫爬取页面时,会识别页面中所有的URL地址去爬取,特别是一些没有明确目标的爬虫。有的网站会将一些链接放在CSS里或者JS里,这些链接正常用户是不会去访问的,它们就相当于陷进,作用是钓出爬虫,一不小心就容易中招。
          以上是比较常见的识别爬虫的手段,要想不被目标网站这么快识别,就要有效的规避这几点,做好爬虫策略,当然反爬手段远远不止这些,这就需要好好研究了。


          5楼2020-09-10 17:56
          回复