抓取手机游戏相关数据
1 开发环境搭建
在开始抓取之前,需要准备以下开发环境:
- Python 环境:建议使用 Python 3.7 或更高版本。
- 必要库安装:
pip install adb-pywrapper mitmproxy requests pillow
- ADB 工具:Android Debug Bridge (ADB) 是与安卓设备通信的桥梁,需要安装并配置环境变量。
- APK 反编译工具:如 Apktool,用于解析 APK 文件结构。
- 安卓设备或模拟器:用于运行欢乐斗地主应用。
2.设备连接与调试
确保安卓设备已正确连接到开发环境:
- 启用 USB 调试:在设备的开发者选项中启用 USB 调试功能。
- 连接设备:使用 USB 线将设备连接到电脑。
- 验证连接:打开命令行工具,输入以下命令验证设备是否正确连接:
adb devices
如果设备成功连接,将显示设备的序列号和状态。
3 网络代理设置
为了抓取网络请求中的多媒体资源,需要设置代理服务器:
- 安装 mitmproxy:
-
pip install mitmproxy
-
2、安装包进行安装
启动 mitmproxy:
mitmproxy -p 8080
4 证书安装
为了抓取 HTTPS 请求,需要安装 mitmproxy 的 CA 证书:
- 获取证书:在浏览器中访问http://mitm.it,下载适合安卓设备的证书。
- 安装证书:
- 将下载的证书文件传输到安卓设备。
- 在设备的设置中,进入 "安全"->"加密与凭据"->"安装证书"。
- 选择下载的证书文件,输入证书名称,点击确定完成安装。
网络资源抓取方案
4.1 mitmproxy 抓包配置
使用 mitmproxy 可以抓取设备与服务器之间的网络通信:
- 启动 mitmproxy:
mitmproxy -p 8080
- 设置安卓设备代理:
- 在设备的 WiFi 设置中,设置代理服务器为电脑的 IP 地址,端口为 8080。
- 验证抓包:
- 打开欢乐斗地主应用,在 mitmproxy 界面中查看捕获的网络请求。
- 查找与多媒体资源相关的请求,如.png、.jpg、.mp3、.mp4等文件扩展名。