Pastebin
Paste #39263: No description
< previous paste - next paste>
Pasted by Anonymous Coward
# har_dump.py
import json
from mitmproxy import ctx
def done():
    har = {
        "log": {
            "version": "1.2",
            "creator": {"name": "mitmproxy custom", "version": "1.0"},
            "entries": []
        }
    }
    for flow in ctx.master.view:
        if flow.request:
            entry = {
                "request": {
                    "method": flow.request.method,
                    "url": flow.request.url,
                    "headers": [[k, v] for k, v in flow.request.headers.items()],
                    "bodySize": len(flow.request.raw_content or b""),
                },
                "response": {
                    "status": flow.response.status_code if flow.response else 0,
                    "headers": [[k, v] for k, v in (flow.response.headers.items() if flow.response else [])],
                    "bodySize": len(flow.response.raw_content or b"") if flow.response else 0,
                }
            }
            har["log"]["entries"].append(entry)
    with open("output.har", "w") as f:
        json.dump(har, f, indent=2)
New Paste
Go to most recent paste.