zoukankan      html  css  js  c++  java
  • Headers配置

    User-Agent

    其值为一些搜索引擎,代表是谁在访问此网页

    一般我们需要通过设置此值来伪装成浏览器,从而绕过一些反爬措施

    注意:如果需要频繁的爬取一个网页,最好弄一个User-Agent的列表来随时切换,从而避免被网站检测到

     

    Accept-Encoding

    一般我们请求网页的时候,服务器有可能会返回压缩过的数据给我们,这个时候只有解压才能获取我们想要的数据。

    一般可以通过数据包里的数据看出服务器是否压缩,以哪种方式压缩。

    • response headers中的 content-encoding

    • request header中的 accept-encoding

    content-encoding是指网页以哪种压缩方式传输数据给你

    accept-encoding是告诉服务器,我可以解压这些格式的数据

    • 网页一般会 根据 你发送的 accept-encoding 来 决定用什么格式 (content-encoding)来传给你

    如果 headers 里面不加这个字段,就是告诉服务器不需要压缩。这样服务器就会将网页的源码本身直接发给你,但这样会造成网络传输的流量变大

    requests会自动解压,所以不加accept-encoding字段也会有默认值gzip, deflate,只有设置字段accept-encoding的值为空的时候,才会获取没压缩过的数据

    注意:一般当我们请求网页的时候,返回的是乱码,就可以看看是不是自己并不能以 accept-encoding里的某种方式解压,而将此方式传给了服务器,从而造成了乱码。

     

    referer

    headers中的referer代表你是从哪个页面进入到此页面的。比如我们是从页面1进入到页面2的,那么页面2的referer就是页面1。

    如果直接在浏览器输入网址进入,referer就会不见,因为我们不是从其他页面进入此页面的

    有的网站会根据referer进行反爬

    注意:使用referer也会引起一些不好的结果,比如你点了一个链接,请求的时候referer就会携带当前的URL,如果你当前的url中有一些隐私信息,那种就会发送给请求的链接了

     

    accept

    代表客户端能够接收的数据类型,类型中的先后顺序代表客户端接受的先后顺序

     

    Accept-Language

    指浏览器用来展示返回信息所优先选择的语言

     

    Connection

    表示是否需要持久连接,如果需要,设置值为 keep-alive,服务器就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显著地减少下载所需要的时间

     

    Host

    请求的web服务器域名地址

     

    Cookie

    发送请求时,会将保存在该域名下的所有cookie值一起发送给浏览器

    注意:如果需要频繁的爬取一个网站,此值建议不断的切换来避免反爬措施

  • 相关阅读:
    拉格朗日插值
    文档 所有空格变为Tab
    windows 计算器
    map 结构体
    插入图片 图片地址
    扩展中国剩余定理
    欧拉定理、欧拉函数、a/b%c
    hdu1033Defragment
    Minimum Inversion Number_线段树||树状数组
    hdu1166敌兵布阵_线段树单点更新
  • 原文地址:https://www.cnblogs.com/yanruizhe/p/15122342.html
Copyright © 2011-2022 走看看