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

作者:zhangdingqu 时间:2022-05-21 01:00:53 

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

  • 实战演练

  • 网站在线转换

  • Postman

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

我们在写爬虫,构建网络请求的时候,不可避免地要添加请求头( 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爬虫请求头

大功告成!

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

来源:https://www.cnblogs.com/zhangdingqu/p/14392716.html

标签:python,爬虫,请求头
0
投稿

猜你喜欢

  • 详解从Django Allauth中进行登录改造小结

    2021-05-05 14:26:58
  • 一个入门级python爬虫教程详解

    2023-03-27 17:34:08
  • Python3 replace()函数使用方法

    2023-07-21 22:25:13
  • 网站如何使用黄金分割布局

    2010-11-05 18:34:00
  • 解决pytorch DataLoader num_workers出现的问题

    2022-10-22 06:34:38
  • gorm golang 并发连接数据库报错的解决方法

    2024-01-24 07:54:44
  • 在Oracle网络结构解决连接问题

    2010-07-28 12:49:00
  • 图片放大镜,多图片放大(已更新)[可调整倍数、区域大小、展示区域位置]

    2011-06-16 20:43:07
  • Go 中的空白标识符下划线

    2024-04-29 13:04:42
  • Pytorch 定义MyDatasets实现多通道分别输入不同数据方式

    2022-02-25 20:42:51
  • 详解duck typing鸭子类型程序设计与Python的实现示例

    2022-12-26 07:12:19
  • php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法

    2023-07-16 11:36:01
  • pyinstaller打包遇到的问题解决

    2021-07-22 07:56:24
  • 一文学会VSCode使用python

    2022-07-26 16:06:46
  • python调用DLL与EXE文件截屏对比分析

    2022-06-01 08:19:15
  • ASP教程:0177:800401f3错误解决

    2008-08-02 12:41:00
  • 精细讲述SQL Server数据库备份多种方法

    2009-01-13 13:33:00
  • python执行等待程序直到第二天零点的方法

    2023-08-27 11:49:21
  • python利用xlsxwriter模块 操作 Excel

    2023-02-11 00:43:02
  • Sql Server2016 正式版安装程序图解教程

    2024-01-21 18:48:53
  • asp之家 网络编程 m.aspxhome.com