博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python爬虫偷懒神器 ---- 快速构造请求头!
阅读量:4129 次
发布时间:2019-05-25

本文共 1163 字,大约阅读时间需要 3 分钟。

我们在写爬虫构建请求的时候,不可避免地要添加请求头( headers ),一般来说,我们只要添加 user-agent 就能满足绝大部分需求了

但这并不是绝对的,有些请求单单添加一个 user-agent 是不能获取到数据的,在不知道是缺少哪个请求头参数的情况下,我一般会先把所有参数全部添加上,然后再逐个排除。

如果是后面这种情况,相信大家都会有这种感觉:手动将浏览器中请求头复制粘贴然后构造成字典里的每一个 键值对 简直太TM太费时间了

所以,本文将介绍几个快速构造请求头的方法,供君选择:

正则一键替换

正则替换指的是利用 Pycharm 的 ctrl+R 替换功能,下面带大家一步一步来演示该操作,我们将浏览器的请求头复制到 Pycharm 中,如下面所示

然后按住 crtl+R,会出现上下两个输入框,然后勾选 Regx 以及 In selection 这两个选项

在上面框填入要匹配内容的正则表达式:

(.*?): (.*)

第二个填入匹配组后的格式

"$1": "$2",

其中 "$$1 ", “$2” 分别表示匹配组,即匹配成功的原文

填完之后,选中我们刚复制的内容,点击 Replace all 按钮即可

最后在外层加上 headers = { } 就完成我们要构造的格式了

Pycharm 快捷键

这里再介绍一种利用 Pycharm 快捷键替换方法,常用的快捷键还是要记住,对平常快速代码帮助很大 。

  • 第一步

还是以上面复制的请求头为例,按住 Alt 键,同时鼠标定位字典键名结束位置,如下所示,注意看键名旁边都有一个鼠标指针

  • 第二步

输入引号,然后指针再前进两步,在字典值前面输入引号。

  • 第三步

再按下 End 键,在最末尾输入引号及逗号。

最后按下 Home 键,在最前面输入引号,即大功告成!

和正则替换法一样,在最外层输入 headers = { } 即完成

postman

在浏览器中 Copy as cURL(bash) 我们要构造的请求,如下图所示

copy

然后打开 postman,选择左上角的 New 旁边的 Import 按钮 ,粘贴我们刚 copy 的内容

点击 Import, 就回到了发现请求的界面,选择发送按钮下方的 code 键,

如上图, headers 已生成,不仅支持 Python 还支持其他语言,强大👍

网站一键替换

有不少网站都有这个构造功能,但是该网站是我用过的最好用的最强大的

除了能构造请求头,还能单独构造 cookies 同时自动帮我们生成请求的代码。你甚至你不用自己手写代码

同样的在浏览器中 Copy as cURL(bash) 我们要构造的请求,打开网站,

粘贴后即自动生成,快得很…

还有多种语言供你选择。公众号后台回复 headers 获取网站地址!

转载地址:http://wkzvi.baihongyu.com/

你可能感兴趣的文章
模拟实现函数的apply.call.bind函数
查看>>
牛客网ACM模式下JavaScript(V8)常见输入输出练习
查看>>
如何在页面上实现一个圆形的可点击区域?
查看>>
v-if 与 v-show的区别及对生命周期的影响
查看>>
js实现trim方法
查看>>
数据过多/DOM操作导致页面卡顿和请求突增导致页面崩溃
查看>>
Python安装 Requests 和 BeautifulSoup 开发库
查看>>
NLP情感分析——KNN算法
查看>>
Python爬虫练习——爬取腾讯新闻
查看>>
在GitHub上创建版本库并上传本地文件
查看>>
Python爬虫 百度新闻列表20条的标题、链接、日期
查看>>
Python解析json方法学习
查看>>
Pycharm学生免费专业版-安装教程
查看>>
Python爬虫学习笔记
查看>>
如何确定自己浏览器的User-Agent信息
查看>>
VS2015配置darknet项目时遇到MSB3721的解决办法
查看>>
leetcode刷题 1 两数之和 Two Sum(简单) Python Java
查看>>
leetcode刷题 7 反转整数 Reverse Integer(简单) Python Java
查看>>
Python中[ : n]、[m : ]、[-1]、[:-1]、[::-1]、[2::-1]和[1:]的含义
查看>>
Python小括号、中括号、大括号和尖括号的含义
查看>>