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中类的一些方法分析
Sep 25 Python
分享一下Python 开发者节省时间的10个方法
Oct 02 Python
Python正则表达式分组概念与用法详解
Jun 24 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
python dataframe 输出结果整行显示的方法
Jun 14 Python
Python字典创建 遍历 添加等实用基础操作技巧
Sep 13 Python
详解pandas库pd.read_excel操作读取excel文件参数整理与实例
Feb 17 Python
实例讲解Python3中abs()函数
Feb 19 Python
python opencv 简单阈值算法的实现
Aug 04 Python
opencv3/python 鼠标响应操作详解
Dec 11 Python
快速了解Python开发环境Spyder
Jun 29 Python
利用Python批量识别电子账单数据的方法
Feb 08 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 分库分表hash算法
2009/11/12 PHP
PHP命令Command模式用法实例分析
2018/08/08 PHP
php+mysql开发中的经验与常识小结
2019/03/25 PHP
js操作iframe父子窗体示例
2014/05/22 Javascript
JavaScript实现查找字符串中第一个不重复的字符
2014/12/29 Javascript
js实现a标签超链接提交form表单的方法
2015/06/24 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
jquery——九宫格大转盘抽奖实例
2017/01/16 Javascript
angularjs的select使用及默认选中设置
2017/04/08 Javascript
微信小程序之网络请求简单封装实例详解
2017/06/28 Javascript
vue2.0自定义指令示例代码详解
2019/04/25 Javascript
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
2021/01/19 Javascript
Python程序设计入门(1)基本语法简介
2014/06/13 Python
python3.5使用tkinter制作记事本
2016/06/20 Python
Python 递归函数详解及实例
2016/12/27 Python
python数据处理实战(必看篇)
2017/06/11 Python
python验证码识别的示例代码
2017/09/21 Python
Python实现基本数据结构中队列的操作方法示例
2017/12/04 Python
centos+nginx+uwsgi+Django实现IP+port访问服务器
2019/11/15 Python
如何基于Python获取图片的物理尺寸
2019/11/25 Python
Python3自定义http/https请求拦截mitmproxy脚本实例
2020/05/11 Python
python怎么自定义捕获错误
2020/06/29 Python
英国DIY汽车维修配件网站:DIY Car Service Parts
2019/08/30 全球购物
介绍一下JMS编程步骤
2015/09/22 面试题
有多年工作经验的自我评价
2014/03/02 职场文书
电话客服专员岗位职责
2014/06/28 职场文书
2014年党建工作汇报材料
2014/10/27 职场文书
煤矿百日安全活动总结
2015/05/07 职场文书
上课讲话检讨书范文
2015/05/07 职场文书
企业工会工作总结2015
2015/05/13 职场文书
新学期新寄语,献给新生们!
2019/11/15 职场文书
Redis集群新增、删除节点以及动态增加内存的方法
2021/09/04 Redis
一次SQL查询优化原理分析(900W+数据从17s到300ms)
2022/06/10 SQL Server
virtualenv隔离Python环境的问题解析
2022/06/21 Python
云服务器部署 Web 项目的实现步骤
2022/06/28 Servers