我的系统:
Ubuntu 16.04
Mitmproxy version 3.0.4
Python version 3.5.2
Run Code Online (Sandbox Code Playgroud)
我已从mitmproxy
服务器上的docs.mitmproxy.org成功安装。但现在我很困惑如何将日志 mitmproxy 保存到文件?我尝试使用mitmdump --mode transparent --showhost -p 9001 -w output_file
当我打开时output_file
,它不是人类可读的。我阅读了文档并尝试了来自 mitmproxy 的 Github 的脚本,但没有任何线索。
有人知道如何将日志 mitmproxy 保存到文件中,但人类可读吗?
谢谢你!
您可能已经注意到,mitmproxy 生成二进制格式的流。如果您想以人类可读的格式保存流,您可以在运行 mitmproxy 时传递脚本来执行此操作。
\nsave.py
from mitmproxy.net.http.http1.assemble import assemble_request, assemble_response\n\nf = open(\'/tmp/test/output.txt\', \'w\')\n\ndef response(flow):\n f.write(assemble_request(flow.request).decode(\'utf-8\'))\n
Run Code Online (Sandbox Code Playgroud)\n现在运行,输出将以人类可读的格式mitmproxy -s save.py
写入。output.txt
请注意响应,因为它们可能包含大量二进制数据。但如果您确实想以人类可读的格式编写响应,那么您可以添加f.write(assemble_response(flow.response).decode(\'utf-8\', \'replace\'))
到脚本中。
脚本的输出示例:
\n\xe2\x9d\xaf\xe2\x9d\xaf tail -f output.txt\nGET / HTTP/1.1\nHost: example.com\nUser-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:77.0) Gecko/20100101 Firefox/77.0\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8\nAccept-Language: en-US,en;q=0.5\nAccept-Encoding: gzip, deflate\nConnection: keep-alive\nUpgrade-Insecure-Requests: 1\nIf-Modified-Since: Thu, 17 Oct 2019 07:18:26 GMT\nIf-None-Match: "3147526947"\nCache-Control: max-age=0\n
Run Code Online (Sandbox Code Playgroud)\n
归档时间: |
|
查看次数: |
5550 次 |
最近记录: |