您的位置:首页 > 新闻资讯 >文章内容
爬虫的请求头应该怎写不会被发现?
来源:互联网 作者:admin 时间:2019-02-20 17:30:24

    网站的反爬虫存在于整个爬虫获取数据流程里面,爬虫首先会遇到请求的问题,如果爬虫不伪装浏览器发送请求,那么就会被网站检测到爬虫,从而禁止访问,拒绝返回信息。那么爬虫的请求头应该怎写呢?


    当我们使用浏览器访问网站的时候,浏览器会发送一小段信息给网站,我们称为RequestHeaders,在这个头部信息里面包含了本次访问的一些信息,例如编码方式,当前地址,将要访问的地址等等。这些信息一般来说是不必要的,但是现在很多网站会把这些信息利用起来。其中最常被用到的一个信息,叫做“User-Agent”。网站可以通过User-Agent来判断用户是使用什么浏览器访问。不同浏览器的User-Agent是不一样的,但都有遵循一定的规则。


    例如,我们在windows上面的Chrome浏览器,它的User-Agent是:


    但是如果我们使用Python的Requests直接访问网站,除了网址不提供其他的信息,那么网站收到的User-Agent是空。这个时候网站就知道我们不是使用浏览器访问的,于是它就可以拒绝我们的访问。


    例如:


    没有User-Agent的情况


爬虫的请求头应该怎写不会被发现?


    有User-Agent的情况


爬虫的请求头应该怎写不会被发现?


    如何获取网站的User-Agent呢?请打开Chrome,任意打开一个网站,然后右键,“检查”打开开发者工具,定位到“Network”选项卡,并刷新网页,如下图所示:


爬虫的请求头应该怎写不会被发现?


    在左下角会出现当前网页加载的所有元素。随便点一个元素,于是在右下角会出现对当前元素的请求信息。在里面找到RequestHeaders这一项,里面的内容即为我们需要的内容。


    不同的网站,RequestHeaders是不同的


    提示:requests的get方法,post方法,Session模块的get方法,post方法,都支持自定义Headers,参数名为headers,它可以接收字典作为参数。


    我们可以通过字典来设定Headers,例如:


爬虫的请求头应该怎写不会被发现?


    其实网站通过检查User-Agent是一种最简单的反爬虫机制,而我们爬虫也可以通过设定RequestHeaders中的User-Agent来突破这种机制。当时如果获取信息都使用同一种User-Agent,这也太反常了,没有那么巧的事情,这也可能会被检测到,从而被封。因此,即使使用User-Agent能突破限制,也是需要更换不同User-Agent来使用,可以收集不同的浏览器User-Agent,同浏览器不同本版的User-Agent也是不一样,都可以收集轮流使用。


相关文章内容简介
推荐阅读
  • 06 2019-09
    代理IP有多少种服务器?

    代理IP的种类我们了解得不少,有静态IP代理、动态IP代理,而且还可以有不同的匿名程度选择。那么这么多的代理选择,代理IP是如何提供的呢?那么就需要了解IP代理所使用的服务器了。

  • 07 2019-05
    IE内设代理IP上网

    IE内设代理IP上网,这样可以更加顺利的访问一些网站,因为有些网站可能访问比较频繁之后会被限制,但如果在IE内设代理IP上网,就不必担心这个问题了。

  • 03 2020-03
    如何判断ip代理软件的质量

    我们在平时上网的时候,大家都会发现这样的现象,例如最近时常浏览一个产品,搜索引擎就会自动推荐给你类似的。实际上,在网上的搜索、浏览都会被搜索引擎、网络软件等记录跟踪。无论

  • 18 2019-09
    选购代理IP需要注意什么?

    网络营销的氛围是越来越浓的,不少的广告、推广的战场都转移到了线上平台,像现在如果你需要开展数据分析、投票打榜等活动,均离不开代理IP的帮助,只有通过使用IP代理才能够让这些营

  • 27 2020-05
    代理IP不仅仅解决网络限制

    代理IP不仅仅解决网络限制,很多人都知道使用代理IP可以解决网络的限制问题,例如注册帐号、访问外国网站、软件等。这是代理IP的主要用途,但其实还有很多用途供我们使用。

  • 10 2019-09
    使用代理IP开展爬虫工作准备流程

    一个完整的爬虫代理服务是怎么样的呢?爬虫工作者的代理IP要从什么地方找,又怎么去测试是否有效呢?如果你也有以上疑问,今天机灵代理正好为大家带来有关搭建爬虫代理的教程讲解。

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部