【mitmproxy】使用mitmproxy录制http流量并写入文件

一、场景

    就是想用python脚本录制相关请求流量,然后回放给服务

 

二、脚本

import mitmproxy
import json


class HttpFlowRecorder:
    def __init__(self):
        self.traffic = []

    def request(self, flow):
        request_info = {
            "url": flow.request.url,
            "method": flow.request.method,
            "headers": dict(flow.request.headers),
            "body": flow.request.text,
        }
        self.traffic.append(request_info)

    def response(self, flow):
        pass

    def done(self):
        with open("http_requests.log", "w") as file:
            file.write(json.dumps(self.traffic))


addons = [
    FlowRecorder()
]

 

 

三、执行脚本

sudo mitmdump -s traffic.py

 

四、设置浏览器

1、搜索代理设置

 
2、打开代理设置

3、设置代理为手动

 

五、启动脚本

$ sudo mitmdump -s traffic.py

 

六、访问浏览器

 

七、检查结果

关闭程序

 

参考链接:

揭秘抓包利器:Python和Mitmproxy让您轻松实现接口请求抓取与分析! - 测试玩家勇哥 - 博客园

Python自动化测试之线上流量回放:录制、打标、压测与平台选择_python 客户端自动化录制回放-CSDN博客

https://blog.csdn.net/crisschan/article/details/51887694

posted @ 2024-07-22 14:55  代码诠释的世界  阅读(136)  评论(0编辑  收藏  举报