codeorg免费编程网站,在百度做网站多少钱,个人网站备案怎么做,网页搜索多个关键词抓包工具mitmproxy环境配置使用#xff08;一#xff09;抓包工具mitmproxy | mitmweb基本用法#xff08;二#xff09;前面已经给大家分享了mitmproxy的环境配置和基本使用#xff0c;文章浏览量很高#xff0c;相信对抓包工具感兴趣的朋友#xff0c;已经熟练运用起来… 抓包工具mitmproxy环境配置使用一抓包工具mitmproxy | mitmweb基本用法二 前面已经给大家分享了mitmproxy的环境配置和基本使用文章浏览量很高相信对抓包工具感兴趣的朋友已经熟练运用起来了。 这期给大家分享下mitmproxy结合python脚本对抓包信息的请求头、请求头、接口url、请求方式、响应头、响应体等进行监控实时抓取数据并存储到文件里实现了接口自动化测试中的接口用例设计自动化无需花费大量时间手动编写接口用例大大提高了工作效率相信很多人看到这里已经欣喜难耐了一定要关注下方公众号有更多精彩技术文章。一、mitmproxy介绍mitmproxy是Python编写的一款功能完善的代理工具mitmproxy是一款支持拦截HTTP和HTTPS请求和响应并即时修改它们的交互式中间人代理工具。最强大之处在于对python脚步的支持它提供了Python API给开发者编写插件用来自定义对流量进行处理和修改可以在python代码中直接处理数据包。二、mitmproxy的功能1、拦截HTTP和HTTPS请求和响应2、保存HTTP会话并进行分析3、模拟客户端发起请求模拟服务器端返回响应4、利用反向代理将流量转发给指定的服务器5、支持Mac和linux上的透明代理6、利用Python对HTTP请求与响应进行实时处理三、环境1、部署python环境2、安装mitmproxypip install mitmproxymitmproxy提供了HTTP、WebSocket、TCP事件。本次只考虑HTTP事件HTTP事件提供一些api详情参考https://docs.mitmproxy.org/stable/addons-events/四、启动web抓包抓包信息全量存入文件1、cmd下执行mitmweb -p 8889 -w C:\Users\la\Desktop\test.txt启动抓包服务实时抓取全量数据存入文件2、自动打开web抓包页面3、边抓包边将抓包的全量信息实时存入文件五、python脚本 编写python脚本获取接口请求头、请求头、接口url、请求方式、响应头、响应体等需要的信息脚本变更保存后实时同步无需重新启动抓包服务import mitmproxy.http
import csv,jsonclass CaptureInfoWriteFile:def __init__(self):passdef request(self, flow: mitmproxy.http.HTTPFlow):flow_request flow.request # 获取请求对象self.url flow_request.url # 接口urlself.host flow_request.host # 域名self.path flow_request.path # 接口地址self.method flow_request.method # 请求方式self.content flow_request.contentself.timestamp_start flow_request.timestamp_start # 请求开始时间戳self.timestamp_end flow_request.timestamp_end # 请求结束时间戳self.header flow_request.headers # 请求头self.text flow_request.text # 请求体def response(self, flow: mitmproxy.http.HTTPFlow):flow_response flow.response # 获取响应对象response_status_code flow_response.status_code # 响应状态码response_text flow_response.text # 响应体response_content flow_response.contentresponse_timestamp_start flow_response.timestamp_start # 响应开始时间response_timestamp_end flow_response.timestamp_end # 响应结束时间response_header flow_response.headers # 响应头with open(rC:\Users\xia\Desktop\test15.csv, a,newline) as f:f_csv csv.writer(f)f_csv.writerows([[self.url, self.host, self.path, self.method, self.header, self.text, response_status_code, response_header, response_text]])addons [CaptureInfoWriteFile()]六、启动web抓包调用python脚本1、cmd下执行mitmweb -p 8889 -s C:\Users\xia\Desktop\test_maplocal.py启动抓包服务实时监控获取抓包信息2、自动打开web抓包页面3、边抓包边调用python脚本将获取的抓包信息实时存储到文件里方便接口自动测试使用