有时候使用fiddler比较麻烦,可以使用这个组合来自动处理请求分析
1. 安装mitmproxy
pip install mitmproxy
2. 生成https证书
mitmproxy
执行命令: mitmproxy 会自动生成https证书,证书位置: C:\Users\yourusername\.mitmproxy
双击"mitmproxy-ca-cert.cer"导入到"受信任的证书机构" 即可.
3. 用python脚本来处理mitmproxy请求
在mitmproxy终端中,按:
键打开命令提示符,然后输入以下命令:
script.load path/to/your/mitmproxy_script.py
或者退出mitmproxy终端,重新用下面的命令启动
mitmproxy -s path/to/your/mitmproxy_script.py
下面mitmproxy_script.py脚本处理请求的一个示例:
from mitmproxy import httpdef request(flow: http.HTTPFlow):# 获取请求URLurl = flow.request.url# 如果请求URL符合条件(例如,包含特定的c、d、e、f请求),则打印请求详细信息if "c" in url or "d" in url or "e" in url or "f" in url:print(f"Request URL: {url}")print(f"Request Method: {flow.request.method}")print(f"Request Headers: {flow.request.headers}")print(f"Request Content: {flow.request.content}")
如果想后台节省资源可以不使用ui交互,使用mitmdump用法同上,同时可以使用 "-q" 参数设置不输出日志.
更进一步如果想抓取某个特定网址,可以使用下面的命令
mitmdump -s index.py --allow-hosts domain.com