Python网络爬虫摘文-爬虫开发基础-1.2-请求头

请求头描述客户端向服务器发送请求时使用的协议类型所使用的编码以及发送内容的长度等。
客户端(浏览器)通过输出URL后确定等于做了一次向服务器的请求动作,在这个请求里面带有请求参数,请求头在网络爬虫中的作用是相当重要的一部分。检测请求头是常见的反爬虫策略,因为服务器会对请求头做一次检测来判断这次请求是人为的还是非认为的。为了形成一个良好的代码编写规范,无论网络是否做Headers反爬虫机制,最好每次发送请求都添加请求头。

请求头的参数如下:

  1. Accept:text/html,image/*(浏览器可以接收的文件类型)
  2. Accept-Charset: ISO-8859-1(浏览器可以接收的编码类型)
  3. Accept-Encoding: gzip,compress(浏览器可以接收的压缩编码类型)
  4. Accept-Language: en-us,zh-cn(浏览器可以接收的语言和国家类型)
  5. Host:请求的主机地址和端口
  6. If-Modified-Since: Tue,11 Jul 2000 18:23:51 GMT(某个页面的缓存时间)
  7. Referer:请求来自那个页面的URL
  8. User-Agent:Mozilla/4.0 (compatible,MSIE 5.5,Windows NT 5.0,浏览器相关信息)
  9. Cookie: 浏览器暂存服务器发送的信息
  10. 10.Connection:close(1.0)/Keep-Alive(1.1)(HTTP请求版本的特点)
  11. Date:Tue,11 Jul 2000 18:23:51 GMT(请求网站时间)

一个标准的请求基本上都带有以上属性。在网络爬虫中,请求头一定要有User-Agent,其他的属性可以根据实际需求添加,因为反爬虫通常检测请求头的Referer和User-Agent,而Cookie不能添加到请求头。
除此之外,还有一些比较特殊的请求头信息,如Upgrade-Insecure-Requests(告诉服务器,浏览器可以处理HTTP协议)、X-Request-With(判断是否Ajax请求)等。

以下是Python里面一个完整的请求头,以字典格式生成,代码如下:
在这里插入图片描述
·
··
·
·

·文章摘选自《实战Python网络爬虫》,仅用于个人学习笔记。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值