下来的示例中会介绍Python脚本的使用
常见的http代办代理有:Fiddler、Charles以及下来要介绍的Mitmproxy,几款抓包软件本人都使用过,可以说是各有各的特点。Mitmproxy小巧强大,最吸引我的是它撑持插手Python脚本,便利开发人员直接措置惩罚惩罚监听到的数据。
Explicit HTTP
安置这步对照简单,,直接pip install mitmproxy,或者自行下载安置包。更多更详细的安置说明可以检察这篇文章:MitmProxy的安置
使用window下不撑持使用mitmproxy,但可以使用此外两个附带的组件:mitmdump和mitmweb,二选一在控制台输入,代办代理开启后默认的监听端口为8080。mitmdump是纯控制台输出的监听形式,mitmweb则对应有相关的web监听界面。
mitmdump
mitmweb
变动监听端口?添加-p参数,如mitmdump -p 10000;想指定py脚本?带上-s参数即可,如mitmweb -s out.py;完整的参数信息及使用应该检察官网说明,下来的示例中会介绍Python脚本的使用。
示例mitmproxy中界说了一系列完整的监听流程事件,凡是这并不需要我们存眷太多,常见的Events莫过于request和response,完整的mitmproxy事件请点击这里检察,下面的简单示例或许对你有辅佐:
import mitmproxy.http def request(flow: mitmproxy.http.HTTPFlow): """ The full HTTP request has been read. """ flow.request.headers["User-Agent"] = "Chrome/66.0.3497.100" pretty_url = flow.request.pretty_url print(pretty_url) def response(flow: mitmproxy.http.HTTPFlow): """ The full HTTP response has been read. """ content = flow.response.content print(content)
小结在成果上大都抓包软件大同小异,重要的还是得按照场景来选择最合适的;我当初接触到mitmProxy,是因为在爬取某APP数据的时候,测验考试了一段时间都没有还原出客户端接口加密的请求流程,后来结合使用了Appium和mitmProxy,算是部分实现了该需求。综上,全文只是简单浅显的介绍了mitmproxy,而往往看官方文档才是最完整和高效的。
小巧实用的 HTTP 代办代理抓包工具:mitmproxy
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/32165.html
- 上一篇:2、CSS选择器、单位、文本
- 下一篇: 案例个人简历实现 首先进行表格延长一共是 六行七列