Python headers请求头如何实现快速添加


Posted in Python onNovember 03, 2020

1、为什么要设置headers?

在请求网页爬取的时候,输出的text信息中会出现抱歉,无法访问等字眼,这就是禁止爬取,需要通过反爬机制去解决这个问题。

headers是解决requests请求反爬的方法之一,相当于我们进去这个网页的服务器本身,假装自己本身在爬取数据。

对反爬虫网页,可以设置一些headers信息,模拟成浏览器取访问网站 。

2、 headers在哪里找?

谷歌或者火狐浏览器,在网页面上点击:右键?>检查?>剩余按照图中显示操作,需要按Fn+F5刷新出网页来

有的浏览器是点击:右键->查看元素,刷新

Python爬虫中Requests设置请求头Headers的方法

注意:headers中有很多内容,主要常用的就是user-agent 和 host,他们是以键对的形式展现出来,如果user-agent 以字典键对形式作为headers的内容,就可以反爬成功,就不需要其他键对;否则,需要加入headers下的更多键对形式。

代码如下

import re
# 下方引号内添加替换掉请求头内容
headers_str = """
Accept: application/json, text/javascript, */*; q=0.01
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cache-Control: no-cache
Connection: keep-alive
Content-Length: 77
Content-Type: application/json
User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1
X-Apple-App-Id: 632
X-Apple-Frame-Id: daw-10beaddd-c22f-4fd4-8aba-ef4909a721dd
X-Requested-With: XMLHttpRequest
"""
pattern = '^(.*?):(.*)$'
for line in headers_str.splitlines():
  print(re.sub(pattern,'\'\\1\':\'\\2\',',line).replace(' ',''))

结果

Python headers请求头如何实现快速添加

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
处理Python中的URLError异常的方法
Apr 30 Python
Python使用django搭建web开发环境
Jun 09 Python
Python遍历某目录下的所有文件夹与文件路径
Mar 15 Python
Python设计模式之迭代器模式原理与用法实例分析
Jan 10 Python
Python实现钉钉发送报警消息的方法
Feb 20 Python
Python中@property的理解和使用示例
Jun 11 Python
python实现根据给定坐标点生成多边形mask的例子
Feb 18 Python
Python图像处理库PIL的ImageDraw模块介绍详解
Feb 26 Python
python高阶函数map()和reduce()实例解析
Mar 16 Python
Pandas将列表(List)转换为数据框(Dataframe)
Apr 24 Python
解决使用Pandas 读取超过65536行的Excel文件问题
Nov 10 Python
浅析Python的命名空间与作用域
Nov 25 Python
python time()的实例用法
Nov 03 #Python
Python-openpyxl表格读取写入的案例详解
Nov 02 #Python
Python常用扩展插件使用教程解析
Nov 02 #Python
python实现三壶谜题的示例详解
Nov 02 #Python
python 实现批量图片识别并翻译
Nov 02 #Python
基于python实现百度语音识别和图灵对话
Nov 02 #Python
用python进行视频剪辑
Nov 02 #Python
You might like
php桌面中心(四) 数据显示
2007/03/11 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
2011/11/07 PHP
Yii CDBCriteria常用方法实例小结
2017/01/19 PHP
js更优雅的兼容
2010/08/12 Javascript
javascript时区函数介绍
2012/09/14 Javascript
javascript错误的认识不用关心内存管理
2012/12/15 Javascript
仿新浪微博登陆邮箱提示效果的js代码
2013/08/02 Javascript
javascript如何使用bind指定接收者
2014/05/04 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
Bootstrap的popover(弹出框)2秒后定时消失的实现代码
2017/02/27 Javascript
JavaScript正则获取地址栏中参数的方法
2017/03/02 Javascript
javascript实现下雨效果
2017/03/27 Javascript
详解vue.js的devtools安装
2017/05/26 Javascript
Node学习记录之cluster模块
2017/05/31 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
jQuery实现获取及设置CSS样式操作详解
2018/09/05 jQuery
vue3.0 搭建项目总结(详细步骤)
2019/05/20 Javascript
[42:22]DOTA2上海特级锦标赛C组小组赛#1 OG VS Archon第一局
2016/02/27 DOTA
Python框架Flask的基本数据库操作方法分析
2018/07/13 Python
python将txt文档每行内容循环插入数据库的方法
2018/12/28 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
2019/02/15 Python
Django利用cookie保存用户登录信息的简单实现方法
2019/05/27 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
keras训练浅层卷积网络并保存和加载模型实例
2020/07/02 Python
使用Python文件读写,自定义分隔符(custom delimiter)
2020/07/05 Python
PHP如何设置和取得Cookie值
2015/06/30 面试题
CLR与IL分别是什么含义
2016/08/23 面试题
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
2016/08/18 面试题
《蒲公英》教学反思
2014/02/28 职场文书
企业精细化管理实施方案
2014/03/23 职场文书
公司开业庆典策划方案
2014/06/04 职场文书
食品安全标语
2014/06/07 职场文书
工程催款通知书
2015/04/17 职场文书
高一军训口号
2015/12/25 职场文书
六年级作文之自救
2019/12/19 职场文书
在K8s上部署Redis集群的方法步骤
2021/04/27 Redis