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

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

Python资源共享群:484031800

一般来说,我们只要添加 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 内容来判断)

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

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

4,生成代码如下图

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

Postman

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

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

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

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

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

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

大功告成!

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

python如何请求curl_Python爬虫偷懒神器 —— 一键构造请求头!相关推荐

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

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

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

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

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

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

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

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

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

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

  6. python爬虫post请求_Python爬虫之GET和POST请求

    爬虫--GET请求和POST请求 urllib.parse.urlencode()和urllib.parse.unquote() 编码工作使用urllib.parse的urlencode()函数,帮我 ...

  7. python urllib发送post请求_python爬虫 urllib模块发起post请求过程解析

    urllib模块发起的POST请求 案例:爬取百度翻译的翻译结果 1.通过浏览器捉包工具,找到POST请求的url 针对ajax页面请求的所对应url获取,需要用到浏览器的捉包工具.查看百度翻译针对某 ...

  8. 已解决(Python爬虫requests库报错 请求异常SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool

    成功解决(Python爬虫requests库报错 请求异常,SSL错误,证书认证失败问题)requests.exceptions.SSLError: HTTPSConnectionPool(host= ...

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

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

最新文章

  1. 学习笔记:二叉搜索树的验证
  2. linux怎么创建vi脚本,Vim 创建Python脚本时候自动补全解释器和编码方法
  3. Android Studio运行报错Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled
  4. jQuery:从零开始,DIY一个jQuery(2)
  5. csdn怎样设置友情链接栏目
  6. C# 程序集 和 反射
  7. ECshop生态全面开放,城市合伙人招募火热启动
  8. 3 描述android的组件,Android基础------Intent组件
  9. MySQL的性能调优工具
  10. 软件测试面试常用Linux命令总结
  11. WBE前端笔记3:JavaScript练习--基础语法
  12. STM32cubemx教程及STM32入门(一)
  13. mysql 分析函数 平均_mysql平均函数
  14. 当了两天向导,带他进行了上海都市游885
  15. 详解Python中列表切片及浅拷贝的关系(上)
  16. u3m8缓存文件.ts合成mp4
  17. What are the best ways to learn self discipline?
  18. Electron使用electron-updater自动更新
  19. 语音amr文件转换为mp3文件
  20. 《信号与系统》解读 第3章 强大的傅里叶时域频域分析工具-2:傅里叶分析方法的基本原理与傅里叶分析的9大步骤

热门文章

  1. Mysql事物隔离级别
  2. 小记:iOS 中一般对于 view 不依赖 model 的的两种代码书写形式
  3. linux下监控某个目录是否被更改
  4. 把语言环境变量改为英文
  5. My Data Sructure TemplatesClass
  6. ASP.NET 防止F5刷新页面按钮重复提交
  7. %set rsh=server.CreateObject(adodb.recordset)%
  8. 我的 Visual Studio . NET 配置
  9. [转载] python numpy--矩阵的通用函数
  10. [转载] Java8新特性-003-Java8接口中的default修饰符