我们在写爬虫构建请求的时候,不可避免地要添加请求头( 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 还支持其他语言,强大

Python爬虫偷懒神器 — 快速构造请求头!相关推荐

  1. python 爬虫 请求网页内容不一致_Python爬虫偷懒神器 — 快速构造请求头!

    点击"Python编程与实战",选择"置顶公众号" 第一时间获取 Python 技术干货! 我们在写爬虫构建请求的时候,不可避免地要添加请求头( headers ...

  2. 添加请求头 retrofit_Python爬虫偷懒神器 — 快速构造请求头!

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

  3. python如何请求curl_Python爬虫偷懒神器 —— 一键构造请求头!

    今天介绍个神奇的网站!堪称爬虫偷懒的神器! 我们在写爬虫,构建网络请求的时候,不可避免地要添加请求头( headers ),以 mdn 学习区为例,我们的请求头是这样的: Python资源共享群:48 ...

  4. Python爬虫requests模块在线生成请求头

    写爬虫的时候,请求头几乎是必写的,但是写起来有点繁琐,虽然不难,但是麻烦,所以这时候,一个自动生成请求头的方法就显得很重要了 在线生成请求头 https://curlconverter.com/ 使用 ...

  5. Python爬虫——2.底层操作和请求头、请求代理以及cookie操作

    本文章此节主要讲解: ·爬虫程序urllib2模块底层操作: ·请求头的设置和添加: ·请求代理的种类和类型: ·关于cookie的操作(手动添加/程序自动获取) 一.爬虫底层操作和请求头的设置 1. ...

  6. Python爬虫:常用的user_agent请求头

    user_agent = [ "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KH ...

  7. 生成的头_Python爬虫偷懒神器!快速一键生成Python爬虫请求头

    今天介绍个神奇的网站!堪称爬虫偷懒的神器! 我们在写爬虫,构建网络请求的时候,不可避免地要添加请求头( headers ),以 mdn 学习区为例,我们的请求头是这样的: 一般来说,我们只要添加 us ...

  8. python在线爬虫_Python爬虫偷懒神器!快速一键生成Python爬虫请求头

    今天介绍个神奇的网站!堪称爬虫偷懒的神器! 我们在写爬虫,构建网络请求的时候,不可避免地要添加请求头( headers ),以 mdn 学习区为例,我们的请求头是这样的: 一般来说,我们只要添加 us ...

  9. python爬虫快速添加请求头、随机生成user-agent

    一.快速添加请求头 import re # 下方引号内添加替换掉请求头内容 headers_str = """ accept: text/html,application ...

最新文章

  1. Swintransformer详细设计文档
  2. SpringMVC异常处理机制-异常处理的思路
  3. WEB前端学习五 js什么是引用类型
  4. SAP Spartacus user form去除嵌套label的side effect之一
  5. ORA-01555 原因与解决
  6. leetcode83 删除排序链表中的重复元素
  7. 【AC】九度OJ题目1153:括号匹配问题
  8. java初始化配置_java – 初始化没有XML配置的数据库,但使用@Configuration
  9. Unity调用动态链接库dll和so
  10. 栈“后进先出”和队列中“先进先出”的含义
  11. 计算机提示无法找到启动盘,怎么解决进入系统启动项窗口找不到U盘启动项-电脑自学网...
  12. Axure RP8 进度条
  13. H5页面设置背景图,微信可浏览背景图
  14. 线上tomcat服务器假死排查
  15. 微信小程序跳转详情页面
  16. C#无法修改“List<T>.this[int]“的返回值,因为它不是变量
  17. thinkphp3.2 阅读数加1实现
  18. 【LaTex】IEEE论文作者信息排版
  19. 古埃及靠砍手、数“断掌“换取黄金,我先砍为敬
  20. PCB关于EMIEMC布线

热门文章

  1. [转]google protobuf安装与使用
  2. A*算法一个简单的记录
  3. php公众号客服消息图文,微信公众号开发系列-发送客服消息(示例代码)
  4. mysql 存储过程 批量导入数据_sql 利用存储过程批量导入数据
  5. linux race window,java开发环境(QTrace)
  6. 位置模拟服务器超时,调用别人提供的服务的时候没有设置超时程序被卡住了怎么办?,如何模拟超时的情况?...
  7. conda如何升级pytorch_第一节 PyTorch简介及环境配置
  8. 关于index.html被缓存问题
  9. 安卓 dex 通用脱壳技术研究(四)
  10. js 把对象按照属性名的字母顺序进行排列