安装
我这里是在pycharm下项目setting安装的
![在这里插入图片描述](https://img-blog.csdnimg.cn/5dabab92b36c4a079426023cfdf40b20.png)
设置环境变量
将下面exe这个路径添加至path
![在这里插入图片描述](https://img-blog.csdnimg.cn/267276eec1c64e6988145c5690e2ed24.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/5d76581c6c0a449d908c3ef8e8728014.png)
启动mitmproxy
https://blog.csdn.net/shifengboy/article/details/114067212
win+R,输入cmd,打开命令行,输入
mitmproxy -p 8999
设置手机代理
手机上点开无线网右侧圆点-代理-输入电脑ip,端口8999
![在这里插入图片描述](https://img-blog.csdnimg.cn/79dbd6377f654161a26f10808f2f6c75.png)
命令行即可看到抓包。
![在这里插入图片描述](https://img-blog.csdnimg.cn/192057b58aee43bb8bec40ae665b6d8c.png)
单击任何一个请求,就可以看到请求详情。
此时只能访问HTTP网站,要访问HTTPS网站,还需要安装mitmproxy的证书。在手机设置了mitmproxy的代理以后,通过手机浏览器访问http://mitm.it/这个网址,看到如下界面。
下载android版本证书,并找到设置安装证书的证书,安装上证书。
(我这里遇到和Charles一样的问题,除了微信,很多手机APP上不了网了。)
原因:https://blog.csdn.net/tester1995/article/details/103585319
安卓7之后调整了安全策略,对于外部导入的证书不可以直接信任了
![在这里插入图片描述](https://img-blog.csdnimg.cn/3e586603178941abb2e15c8ca583fe5a.png)
mitmproxy和charles
区别在于可使用Python来定制mitmproxy的行为。
mitmproxy的强大之处在于它还自带一个mitmdump命令。这个命令可以用来运行符合一定规则的Python脚本,并在Python脚本里面直接操作HTTP和HTTPS的请求,以及返回的数据包。
个人觉得mitmdump真的不好用,一打开手机,抓包数据刷屏。