mitmproxy安装证书_Python爬虫入门教程 47-100 mitmproxy安装与安卓模拟器的配合使用-手机APP爬虫

1. 准备下载软件

介绍一款爬虫辅助工具mitmproxy ,mitmproxy 就是用于MITM的proxy,MITM中间人攻击。说白了就是服务器和客户机中间通讯多增加了一层。跟Fiddler和Charles最大的不同就是,mitmproxy可以进行二次开发,尤其可以对接python。

mitmproxy一般用于开发或者测试,用在爬虫辅助也是极好的。

1.1 几个重要地址

github地址:https://github.com/mitmproxy/mitmproxy 官网地址:https://mitmproxy.org/

1.2 安装流程

进入CMD窗口,执行

pip install mitmproxy

安装完成后,系统将拥有 mitmproxymitmdumpmitmweb 三个命令,由于 mitmproxy 命令不支持在 windows 系统中运行。

mitmproxy是一个支持HTTP和HTTPS的抓包程序,有类似Fiddler、Charles的功能。除了命令行形式的控制台,mitmproxy还有两个关联组件:mitmdump和mitmweb。

mitmdump:它是mitmproxy的命令行接口,利用它我们可以对接Python脚本,用Python实现监听后的处理。

mitmweb:它是一个Web程序,通过它我们可以清楚观察mitmproxy捕获的请求。

我们可以拿 mitmdump 测试一下安装是否成功,执行:

mitmdump --version

执行结果

b1e592c81a4a4cf76fa97a69b9d01997.png

1.3 启动mitmweb

控制台运行

mitmweb

输出

λ mitmweb
Web server listening at http://127.0.0.1:8081/
Proxy server listening at http://*:8080

同时打开你的默认浏览器

7c3ea349c5c783601e681913ba2cef76.png

1.4 配置代理

操作简单,熟悉爬虫的人设置起来难度不大

将代理服务器设置为 127.0.0.1:8080即可

2498550e890584b22ae9418235bfc379.png

这是完毕,在随便访问一个网站,例如百度,一股似曾相识的感觉铺面而来,这就是网页版的Fiddler

381a0c05957382146efbe7b049b749a7.png

1.5 命令行启动

接下来关闭所有 Chrome 窗口,否则命令行启动时的附加参数将失效。打开 cmd,执行:

"C:Program Files (x86)GoogleChromeApplicationchrome.exe" --proxy-server=127.0.0.1:8080 --ignore-certificate-errors

前面那一长串是 Chrome 的的安装路径,应当根据系统实际情况修改,后面两参数设置了代理地址并强制忽略掉证书错误。

1.6 CA证书的安装

当我们初次运行mitmproxy或mitmdump时,

会在当前目录下生成 ~/.mitmproxy文件夹,其中该文件下包含4个文件,这就是我们要的证书了。

.mitmproxy文件夹自行搜索,我采用的是everything软件,一般在电脑上的用户目录

f365e95c8101f1f5fe56cc9adb8d2a2d.png
mitmproxy-ca.pem 私钥
mitmproxy-ca-cert.pem 非windows平台使用
mitmproxy-ca-cert.p12 windows上使用
mitmproxy-ca-cert.cer 与mitmproxy-ca-cert.pem相同,android上使用

windows上安装证书很简单,双击.p12结尾的证书文件即可。 安卓手机需要将对应的文件发送到手机文件,进行安装。

将mitmproxy-ca-cert.cer 放到sdcard根目录下
选择设置-安全和隐私-从存储设备安装证书

2. 使用mitmdump

在windows平台下一般使用mitmdump 控制台运行 mitmdump,出现如下结果

λ mitmdump
Proxy server listening at http://*:8080

2.1 获取本地IP地址 ipconfig

打开模拟器,跟fiddler和Charles的配置其实是非常类似的

基本步骤

1.电脑和手机连接到同一个wifi环境下 2.修改浏览器代理服务器地址为运行mitmdump的那台机器(本机)ip地址,端口设定为你启动mitmdump时设定的端口,如果没有指定就使用8080 3.手机做同样操作,修改wifi链接代理为 【手动】,然后指定ip地址和端口

在手机或pc机上打开浏览器访问 mitm.it 这个地址,选择你当前平台的图标,点击安装证书。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190122235216733.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hpaGVsbA==,size_16,color_FFFFFF,t_70#pic_center =200x320)

845ea8c2c472bc9188280383f38c2563.png

所有这一切操作完毕,打开模拟器的默认浏览器,输入http://www.baidu.com,等待数据的抓取

cbfa5b90aff00c94780721ab86f43abf.png

3. mitmproxy安装与模拟器配合操作完毕

当你看到数据抓取到的那一刻,表示本篇博客结束啦,下一篇,我们就实际的对接一下Python,感谢你的阅读。

97d618e842c9c989dfb6aa20c531efcb.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值