Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装
admin
2023-07-06 10:44:03
0次

除了 Web 网页,爬虫也可以对 APP 的数据进行抓取,APP 中的页面要加载出来,首先需要获取数据,那么这些数据一般是通过请求服务器的接口来获取的,由于 APP 端没有像浏览器一样的开发者工具直接比较直观地看到后台的请求,所以对 APP 来说,它的数据抓取主要用到一些抓包技术。

本书介绍的抓包工具有 Charles、MitmProxy、MitmDump,APP 一些简单的接口我们通过 Charles 或 MitmProxy 分析找出规律就可以直接用程序模拟来抓取了,但是如果遇到更复杂的接口我们就需要利用 MitmDump 对接Python来对抓取到的请求和响应进行实时处理和保存,另外既然要做规模采集就需要自动化 APP 的操作而不是人工去采集,所以这里还需要一个工具叫做 Appium,它可以像 Selenium 一样对 APP 进行自动化控制,如自动化模拟APP的点击、下拉等操作。

本节我们来了解一下 Charles、MitmProxy、MitmDump、Appium 的安装方法。

1.6.1 Charles的安装

Charles 是一个网络抓包工具,在做 APP 抓包的时候会用到,相比 Fiddler 来说,Charles 的功能更为强大,而且跨平台支持更好,所以在这里我们选用 Charles 来作为主要的移动端抓包工具,用于分析移动 APP 的数据包,辅助完成 APP 数据抓取工作。

1. 相关链接
  • 官方网站:https://www.charlesproxy.com
  • 下载链接:https://www.charlesproxy.com/...
2.下载Charles

Charles 的官网是:https://www.charlesproxy.com,我们可以在官网下载最新稳定版本,链接为:https://www.charlesproxy.com/...,它支持 Windows、Linux、Mac 三大平台。

3. 证书配置

现在很多页面都在向 HTTPS 方向发展,HTTPS 通信协议应用越来越广泛,如果一个 APP 通信应用了 HTTPS 协议,那它通信的数据都会是被加密的,常规的截包方法是无法识别请求内部的数据的。Python学习q-u-n 七八四,七五八,二一四 工具,各类实战操作分享
安装完成之后如果我们想要做 HTTPS 抓包的话还需要配置一下相关 SSL 证书,如果不配置的话无法抓取 HTTPS 请求。

点击 Help->SSL Proxying->Install Charles Root Certificate,即可进入证书的安装页面。
接下来找到 Charles 的证书双击,将信任设置为始终信任即可,如图 1-48 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-48 证书配置
这样就成功安装了证书。

iOS

如果你的手机是 iOS 系统,可以按照下面的操作进行证书配置。
首先查看一下电脑的 Charles 代理是是否开启的,点击 Proxy->Proxy Settings 即可打开当前代理设置页面,确保当前的 HTTP 代理是开启的,如图 1-49 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-49 代理设置
例如这里的代理端口为 8888,也可以自行修改。
接下来将手机和电脑连在同一个局域网下,例如当前电脑的 IP 为 192.168.1.76,那么首先设置手机的代理为 192.168.1.76:8888,设置如图 1-50 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-50 代理设置
设置完毕之后电脑上就会出现一个提示窗口,询问是否信任此设备,如图 1-51 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-51 提示窗口
点击 Allow 即可,这样手机就和 PC 连在了同一个局域网内了,而且设置了 Charles 的代理,这样 Charles 即可抓取到流经 APP 的数据包了。
接下来我们再安装 Charles 的 HTTPS 证书。
在电脑上打开 Help->SSL Proxying->Install Charles Root Certificate on a Mobile Device or Remote Browser,如图 1-52 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-52 证书安装页面入口
即可看到如下提示,如图 1-53 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

它提示我们在手机上设置好 Charles 的代理,我们刚才已经设置好了,然后在手机的浏览器中打开 chls.pro/ssl 下载证书,我们在手机上打开这个链接。
打开之后便会弹出证书的安装页面,如图 1-54 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-54 证书安装页面
我们点击安装,然后输入密码即可完成安装,如图 1-55 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-55 安装成功页面
如果你的 iOS 版本是 10.3 以下的话,此处信任 CA 证书的流程就已经完成了。Python学习q-u-n七八四,七五八,二一四教程视频,工具,各类实战操作分享
如果你的 iOS 版本是 10.3 及以上,还需要在设置->通用->关于本机->证书信任设置将证书添加完全信任,如图 1-56 所示:
在这里将 Charles 的证书的完全信任开关打开即可,如图 1-56 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-56 证书信任设置
这样 iOS 上配置信任 CA 证书的流程就结束了。

Android

如果你的手机是 Android 系统,可以按照下面的操作进行证书配置。
Android 同样需要设置代理为 Charles 的代理,如图 1-57 所示:
Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-57 代理设置
设置完毕之后电脑上就会出现一个提示窗口,询问是否信任此设备,如图 1-58 所示:

Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-58 提示窗口
点击 Allow 即可。
接下来像 iOS 设备一样,在手机浏览器上打开 chls.pro/ssl,这时会出现一个提示框,Python学习q-u-n 七八四,七五八,二一四 工具,各类实战操作分享。如图 1-59 所示:
evernotecid://D603D29C-DFBA-4C04-85E9-CCA3C33763F6/appyinxiangcom/23852268/ENResource/p75
Python3网络爬虫实战-6、APP爬取相关库的安装:Charles的安装

图 1-59 证书安装页面
我们为证书添加一个名称,然后点击确定即可完成证书的安装。

4. 结语

本文介绍了 Charles 的安装及证书配置过程,后文我们会介绍 Charles 的基本使用方法。

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...