推荐4个爬虫抓包神器

爬虫的基本原理就是模拟客户端(可以是浏览器,也有可能是APP)向远程服务器发送 HTTP 请求,我们需要知道目标服务器的 HOST、URI、请求方法、请求参数、请求头、请求体。Web 网站通过 Chrome 浏览器可以找到这些信息。但是对于 APP 爬虫,就显得有些束手无策。这时候必须借用一些抓包工具来辅助我们分析APP背后的秘密。

今天推荐4个HTTP代理工具通过抓包分析,帮助你还原APP背后的每个请求。

Fiddler

Fiddler 是 Windows 平台最好用的可视化抓包工具,也是大家最熟知的 HTTP 代理工具,功能非常强大,除了可以清晰的了解每个请求与响应之外,还可以进行断点设置,修改请求数据、拦截响应内容。

此外,还可以自定义规则,通过修改脚本,加入自己的特殊处理,不过因为它是 C# 编写的,如果你要写复杂的脚本,需要懂C#。

过滤器功能使得你可以通过正则表达式规则将你关心的请求显示出来,如果你只需要抓特定网站的数据,这个功能就显得非常有用,可以去除很多干扰信息。

Charles

Charles 是 macOS 平台下最好用的抓包分析工具之一,同样提供GUI界面,界面简洁,基本功能包括HTTP、HTTPS 请求抓包,支持请求参数的修改,最新的 Charles 4 还支持 HTTP/2。当然,也同时支持Windows 和 Linux, 不过这款工具是要收费的,免费试用 30 天,试用期过后功能受限。

AnyProxy

AnyProxy 是 阿里巴巴开源的 HTTP 抓包工具,基于 NodeJS 实现,优点是支持二次开发,可自定义请求处理逻辑,如果你会写JS的话,同时需要做一些自定义的处理,那么AnyProxy 是非常适合的。支持 HTTPS,提供了GUI界面。 GitHub地址:https://github.com/alibaba/anyproxy

mitmproxy

mitmproxy 是一款基于 Python,支持 SSL 的抓包工具,用 Python 写爬虫的一定会很喜欢,因为他不仅是跨平台的,而且提供的是命令行交互模式,很有极(zhuang)客(bi)感。mitmproxy 包含 3 款工具:

mitmproxy: 带交互的终端界面

mitmdump: mitmproxy 的命令行版本,类似于 tcpdump

libmproxy: 用于 mitmproxy/mitmdump 的库

GitHub 地址:https://github.com/mitmproxy/mitmproxy

你可能感兴趣的:(推荐4个爬虫抓包神器)