mitmproxy + Appium实现快手数据的抓取
mitmproxy
1,mitmproxy介绍
mitmproxy是一个支持Http和Https的抓包程序,类似于fiddler,Charles的功能,只不过是通过控制台的形式操作。
此外,mitmproxy还有两个关联组件:
mitmdump:是mitmproxy的命令行接口,利用它可以对接python脚本,实现监听后的处理。
mitmweb:是一个web程序,通过它可以清楚的观察到mitmproxy捕获的请求。
2,mitmroxy环境安装
pip install mitmproxy
注意:在python3.6版本的解释器下是可以安装成功,但是运行会出错,建议使用python3.7版本(3.7版本以上的未测试)
安装完成后使用命令:mitmdump --version 命令来进行测试显示一下结果则表示安装成功:
Mitmproxy: 5.1.1
Python: 3.7.7
OpenSSL: OpenSSL 1.1.1g 21 Apr 2020
Platform: Windows-10-10.0.18362-SP0
不使用mitmproxy测试是因为在Windows下不支持mitmproxy的控制台接口。
3, 证书配置
对于mitmproxy来说,如果想要截获HTTPS请求,就需要设置证书,mitmproxy在安装完成后会提供一套CA证书,在用户目录下的.mimtproxy目录下找到CA证书
1)Windows下安装证书
双击mitmproxy-ca.p12,就会出现导入证书的引导页,有一个私钥密码设置直接跳过,然后选择“将所有证书都翻入下列存储”,点击浏览按钮,选择存储位置为“受信任的根证书颁发机构”,点击确定,下一步按钮即可完成Windows下证书的安装。
2)Android下证书的安装
mitmproxy在安装完成后会提供一套CA证书,里面有一个mitmproxy-ca-cert.pem文件,将该文件传送到手机上,在手机设置里面选择证书的安装,命名随便即可。
4, Android设置网络与mitmproxy进行连接
手机与PC端在同一局域网下,点击手机网络,修改网络设置为手动,代理服务器主机名为PC端IP地址(cmd下运行ipconfig),端口号为默认为8080,保存。
Appium
1, 安装JDK
在JAVA官网http://www.oracle.com/technetwork/java/javase/downloads/index.html下载JDK的安装包
2, 安装SDK
1)下载SDK安装文件,并安装,记录SDK的安装所在文件夹,配置环境变量时使用。
2)配置SDK
打开SDK Manager.exe,选择安装组件时要注意:查看模拟器或者真机的安卓系统,根据安卓系统安卓组件,必须勾选Tools(Preview Channel),其余的组件根据