快速一键生成Python爬虫请求头


Posted in Python onMarch 04, 2021

今天介绍个神奇的网站!堪称爬虫偷懒的神器!

我们在写爬虫,构建网络请求的时候,不可避免地要添加请求头( headers ),以 mdn 学习区为例,我们的请求头是这样的:

快速一键生成Python爬虫请求头

一般来说,我们只要添加 user-agent 就能满足绝大部分需求了,Python 代码如下:

import requests

headers = {
 #'authority': 'developer.mozilla.org',
 #'pragma': 'no-cache',
 #'cache-control': 'no-cache',
 #'upgrade-insecure-requests': '1',
 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 YaBrowser/19.7.0.1635 Yowser/2.5 Safari/537.36',
 #'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
 #'accept-encoding': 'gzip, deflate, br',
 #'accept-language': 'zh-CN,zh-TW;q=0.9,zh;q=0.8,en-US;q=0.7,en;q=0.6',
 #'cookie': 你的cookie,
}

response = requests.get('https://developer.mozilla.org/zh-CN/docs/learn', headers=headers)

但是有些请求,我们要把特定的 headers 参数添加上才能获得正确的网络响应,不知道哪个参数是必要的情况下,就要先把所有参数都添加上,再逐个排除。

但是手动复制粘贴 headers 字典里的每一个键值对太费事了

一个不那么方便的解决方案:

用正则表达式或者直接字符串替换,把 headers 字符串直接转化为字典,封装成函数方便以后反复调用。

有的人喜欢用这种方法,每次复制headers信息,然后调用自己封装好的函数,但我觉得还是挺麻烦的。

那么还有没有快速一键生成 Python 爬虫请求头的方法呢?
这里给大家介绍两个:

  • 网站在线转换
  • Postman

实战演练

抓取网站:https://developer.mozilla.org...

网站在线转换

1,Chrome 打开开发者选项( f12 )---> network 选项卡 ---> 刷新页面,获取请求 ---> 找到页面信息对应的请求 (通过请求的名称、后缀和 response 内容来判断)

快速一键生成Python爬虫请求头

2,右键,copy ---> copy as cURL (bash),注意不是【copy as cURL (cmd)】

快速一键生成Python爬虫请求头

3,打开网站,https://curl.trillworks.com/,粘贴 cURL (bash) 到左边 curl command,右边会自动出 Python 代码

快速一键生成Python爬虫请求头

4,生成代码如下图

快速一键生成Python爬虫请求头

5,print ( response.text ) 就可以直接打印网页源代码啦!

Postman

1,下载 postman ( Chrome 也有个 postman 的插件,操作应该差不多)

2,打开 postman,弹出的界面可以直接关掉

快速一键生成Python爬虫请求头

3,import --> paste raw text,在 Chrome 里复制 curl (bash),粘贴到下面的对话框里,点击 import 按钮

快速一键生成Python爬虫请求头

4,点击 send,模拟网络请求,下方可查看源代码

快速一键生成Python爬虫请求头

5,确保源代码正常后,点击 code

快速一键生成Python爬虫请求头

6,左上角可以选择编程语言,右上角复制到剪贴板

快速一键生成Python爬虫请求头

大功告成!

其实我本人平时都是用第一种,网站比较稳定,基本没出现过异常;有了这个神器就不用自己再构造请求头了,先一键生成,然后再根据需求调一调就好了,几秒钟就搞定了。

以上就是快速一键生成Python爬虫请求头的详细内容,更多关于快速一键生成Python爬虫请求头的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python实现过滤单个Android程序日志脚本分享
Jan 16 Python
Python编程求解二叉树中和为某一值的路径代码示例
Jan 04 Python
Python实现的径向基(RBF)神经网络示例
Feb 06 Python
在matplotlib的图中设置中文标签的方法
Dec 13 Python
在scrapy中使用phantomJS实现异步爬取的方法
Dec 17 Python
对pyqt5之menu和action的使用详解
Jun 20 Python
NumPy中的维度Axis详解
Nov 26 Python
更新升级python和pip版本后不生效的问题解决
Apr 17 Python
浅谈python量化 双均线策略(金叉死叉)
Jun 03 Python
Python中三维坐标空间绘制的实现
Sep 22 Python
Python自动化办公Excel模块openpyxl原理及用法解析
Nov 05 Python
Python基础知识之变量的详解
Apr 14 Python
10个顶级Python实用库推荐
Mar 04 #Python
pytorch 把图片数据转化成tensor的操作
Mar 04 #Python
pytorch 计算Parameter和FLOP的操作
Mar 04 #Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
Mar 04 #Python
python 如何用urllib与服务端交互(发送和接收数据)
Mar 04 #Python
python 求两个向量的顺时针夹角操作
Mar 04 #Python
python 制作磁力搜索工具
Mar 04 #Python
You might like
利用php抓取蜘蛛爬虫痕迹的示例代码
2016/09/30 PHP
PHP聚合式迭代器接口IteratorAggregate用法分析
2017/12/28 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
网页和浏览器兼容性问题汇总(draft1)
2009/06/01 Javascript
jquery复选框多选赋值给文本框的方法
2015/01/27 Javascript
果断收藏9个Javascript代码高亮脚本
2016/01/06 Javascript
JS实现六位字符密码输入器功能
2016/08/19 Javascript
vue.js删除动态绑定的radio的指定项
2017/06/02 Javascript
vue实现可视化可拖放的自定义表单的示例代码
2019/03/20 Javascript
如何基于vue-cli3.0构建功能完善的移动端架子
2019/04/24 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
2019/09/03 Javascript
layui(1.0.9)文件上传upload,前后端的实例代码
2019/09/26 Javascript
使用vue构建多页面应用的示例
2020/10/22 Javascript
jquery实现拖拽添加元素功能
2020/12/01 jQuery
[11:42]2018DOTA2国际邀请赛寻真——OG卷土重来
2018/08/17 DOTA
Python升级提示Tkinter模块找不到的解决方法
2014/08/22 Python
利用Python获取赶集网招聘信息前篇
2016/04/18 Python
python出现"IndentationError: unexpected indent"错误解决办法
2017/10/15 Python
Python实现统计给定字符串中重复模式最高子串功能示例
2018/05/16 Python
Python使用爬虫爬取静态网页图片的方法详解
2018/06/05 Python
对python实时得到鼠标位置的示例讲解
2018/10/14 Python
python根据txt文本批量创建文件夹
2020/12/08 Python
使用Python爬虫爬取小红书完完整整的全过程
2021/01/19 Python
python 实现IP子网计算
2021/02/18 Python
HTML5实现一个能够移动的小坦克示例代码
2013/09/02 HTML / CSS
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
毕业评语大全
2014/05/04 职场文书
总经理岗位职责
2015/02/04 职场文书
驳回起诉民事裁定书
2015/05/19 职场文书
离婚答辩状怎么写
2015/05/22 职场文书
css3实现背景图片半透明内容不透明的方法示例
2021/04/13 HTML / CSS
python ansible自动化运维工具执行流程
2021/06/24 Python
Python+Tkinter打造签名设计工具
2022/04/01 Python
吉利入股戴姆勒后smart“长大了”
2022/04/21 数码科技
pytorch实现加载保存查看checkpoint文件
2022/07/15 Python