news 2026/7/13 14:11:17

python抓包工具mitmproxy

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
python抓包工具mitmproxy

1、安装

pip install mitmproxy

2、启动,代理端口根据实际情况修改

#mit代理 http://127.0.0.1:8888 mitmweb --listen-port 8888

3、开启web页面 http://127.0.0.1:8081/

4、让ap走代理

  • 代码设置代理

只影响该代码本身

import os os.environ["HTTP_PROXY"] = "http://127.0.0.1:8888" os.environ["HTTPS_PROXY"] = "http://127.0.0.1:8888"
  • 环境变量设置代理

注意:因为设置环境变量,会导致其他ap也走代理,需要时才用这个方法,测试后删除环境变量

$env:HTTP_PROXY="http://127.0.0.1:8888" $env:HTTPS_PROXY="http://127.0.0.1:8888"

5、可能出现https请求问题

这个问题是因为 mitmweb 的 HTTPS 证书没有被信任导致的。当你设置代理后,HTTPS 请求会经过 mitmproxy,但它使用的自签名证书不被 Python 信任。

解决方法1:用环境变量方法

解决方法2:使用 httpx 客户端配置

import httpx # 创建一个跳过 SSL 验证的 httpx 客户端 http_client = httpx.Client( proxy="http://127.0.0.1:8888", verify=False # 跳过 SSL 验证 ) llm = ChatOpenAI( model="xop35qwen2b", openai_api_key=os.getenv("xf_API_KEY"), openai_api_base="https://maas-api.cn-huabei-1.xf-yun.com/v2", temperature=0.7, max_tokens=1024, http_client=http_client # 传入自定义客户端 )

解决方法3:跳过SSL验证,可能不安全,测试好像无效

import os os.environ["HTTP_PROXY"] = "http://127.0.0.1:8888" os.environ["HTTPS_PROXY"] = "http://127.0.0.1:8888" os.environ["SSL_CERT_FILE"] = "" # 清空证书环境变量

解决方法4:安装 mitmproxy 证书(待验证)

Windows

  1. 启动 mitmweb

  2. 浏览器访问http://mitm.it

  3. 下载 Windows 证书

  4. 双击安装,选择"受信任的根证书颁发机构"

或者手动安装

# 1. 生成证书 mitmdump --set block_global=false # 2. 证书位置通常在: # Windows: %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.pem # Linux/Mac: ~/.mitmproxy/mitmproxy-ca-cert.pem # 3. 在代码中指定使用这个证书 import os os.environ["REQUESTS_CA_BUNDLE"] = r"C:\Users\你的用户名\.mitmproxy\mitmproxy-ca-cert.pem" os.environ["SSL_CERT_FILE"] = r"C:\Users\你的用户名\.mitmproxy\mitmproxy-ca-cert.pem"
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/13 14:06:36

RT-Thread的IPC设计:邮箱和消息队列,两套不同的思路

RT-Thread的IPC设计:邮箱和消息队列,两套不同的思路两个任务之间要传数据,你用邮箱还是消息队列?这个问题我第一次碰RT-Thread时就卡住了。翻API文档,邮箱收发数据只要几个tick,消息队列好像也差不多。一个…

作者头像 李华
网站建设 2026/7/13 14:04:41

ARM Cortex-M4直流电机控制方案设计与实现

1. 项目背景与硬件选型解析在嵌入式开发领域,控制直流电机是最基础也最具挑战性的任务之一。我最近使用Fusion for ARM v8开发板和NXP的MK20DN128VFM5微控制器完成了一个通用直流电机控制方案,这套组合有几个独特的优势值得分享。Fusion for ARM v8是Mik…

作者头像 李华
网站建设 2026/7/13 14:03:59

3步免费解锁Wand游戏修改器所有高级功能的终极指南

3步免费解锁Wand游戏修改器所有高级功能的终极指南 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer 还在为Wand游戏修改器的付费高级功能而烦恼吗&a…

作者头像 李华
网站建设 2026/7/13 14:03:55

JVM Safepoint 机制深度解析:为什么 GC 停顿时间不等于 STW 时间

JVM Safepoint 机制深度解析:为什么 GC 停顿时间不等于 STW 时间很多团队的线上告警里,GC 停顿时间(GCPauseTime)和实际 STW(Stop-The-World)时间之间存在明显差距。排查到最后,根因往往是 Safe…

作者头像 李华
网站建设 2026/7/13 14:03:03

云原生微服务架构设计:2026 年最佳实践与避坑指南

云原生微服务架构设计:2026 年最佳实践与避坑指南 引言 如果说前几年云原生还是"先进技术"的代表,那现在基本已经是行业标配了。2026年,新启动的项目大部分都会考虑用容器、微服务这些技术栈。从 CI/CD 到监控告警,从服…

作者头像 李华