Python爬虫之路(3)-- 抓包工具介绍

转载来源:CrawlerTutorial/爬虫入门/05_常用的抓包工具有那些.md at main · NanmiCoder/CrawlerTutorial (github.com)

利用各种工具抓包网络请求

在进行网络爬虫开发时,抓包是一个非常重要的步骤。它可以帮助我们了解客户端和服务器之间的通信过程,包括请求的发送和响应的接收。这对于分析和模拟网络请求尤其关键。本教程将介绍几种常用的抓包工具,包括Chrome的开发者工具、Charles和Fiddler。

  • Chrome抓包Web应用
  • Charles和Fiddler既可以抓包APP也可以抓包Web

使用Chrome的开发者工具

我之前写了一篇博客微博爬虫的示例,其中有关于Chrome F12抓包的文章,感兴趣的可以去看下:微博帖子评论爬取教程

Chrome浏览器内置的开发者工具是最直接便捷的抓包方式之一,特别适合前后端分离的网站分析。

  1. 打开Chrome浏览器,访问目标网站。

  2. 按F12或右键点击页面,选择"检查"打开开发者工具。

  3. 切换到"Network"(网络)标签页。此时可能需要刷新页面以捕获所有网络请求。

  4. 浏览网络请求列表,点击任一请求查看详细信息,包括请求头、响应头、响应体等。

  5. 可以通过过滤器筛选特定类型的请求,例如XHR(Ajax请求)。

  6. 使用Chrome开发者工具的优点在于无需安装额外软件,操作简单,适合快速查看和分析HTTP/HTTPS请求。

然后刷新页面,重新加载网站,让服务端重新发送数据给我们。

使用Charles

当我有抓取APP或者小程序等需求的时候,我用charles比较多一些,因为它对Macos支持比较友好。

具体安装和使用示例可以看这篇文章,写的比较细:charles安装入门使用示例

Charles是一款广受欢迎的跨平台抓包工具,它可以作为代理服务器运行,监控和修改进出电脑的所有HTTP和HTTPS请求。

  1. 下载并安装Charles。
  2. 启动Charles,它会自动开始捕获网络请求。
  3. 配置浏览器或设备使用Charles为代理服务器。这通常涉及到设置代理服务器地址为127.0.0.1(本机地址),端口为Charles显示的端口(默认8888)。
  4. 访问目标网站或应用,Charles会显示通过它的所有请求和响应。
  5. 双击任一请求或响应以查看详细内容。

Charles强大之处在于它能够修改请求或响应,实现更深入的测试和分析。

使用Fiddler

这款工具在windows平台很火,我之前在上一家公式做一些爬虫的小需求有用过,整体尚可,但是好像已经开始收费了,免费版的功能又受限。

具体安装和使用示例可以看这篇文章,写的比较细:Fiddler安装入门使用示例

Fiddler同样是一款功能强大的网络请求分析工具,它也可以捕获计算机上的HTTP/HTTPS请求。

  1. 下载并安装Fiddler。
  2. 启动Fiddler,它默认开始捕获网络请求。
  3. 在"Web Sessions"窗口中,可以看到通过Fiddler的所有HTTP/HTTPS请求和响应。
  4. 点击任一条目查看详细的请求和响应信息。

Fiddler提供了广泛的自定义选项,包括断点设置、请求编辑、性能测试等高级功能。

总结

抓包是网络爬虫开发中不可或缺的一环。通过使用Chrome开发者工具、Charles、Fiddler等工具,我们可以有效地分析和理解客户端与服务器之间的通信过程。这些工具各有特点,选择合适的工具可以大大提高爬虫开发的效率和质量。

相关推荐
wuyk5552 分钟前
PyQt6-第05讲-QtDesigner工作流与ui文件
python·ui·pyqt
Want59519 分钟前
Python跳动的爱心②
开发语言·python·数学建模
田里的水稻22 分钟前
PyTorch_TensorBoard展示
人工智能·pytorch·python·深度学习·神经网络
张张123y42 分钟前
后端第九课:部署上线(把你的 FastAPI 后端真正跑起来给别人用)
python·docker·部署·fastapi
云勤通1 小时前
智慧后勤系统哪家定制能力强
大数据·python
想七想八不如114081 小时前
元学习简单入门
人工智能·pytorch·python·深度学习·学习·机器学习
Zucker n1 小时前
一款适合研究生科研工作安排的日历
linux·数据库·python
尼给路达哟2 小时前
node(koa)和python(fastapi)面试
python·面试·fastapi
曲径海盗3 小时前
【Python 学习第 32 天】字符串基础
python·学习笔记·编程入门
田里的水稻3 小时前
PyTorch_torchvision---数据集下载\TensorBoard可视化
人工智能·pytorch·python·深度学习·机器学习