好久没用花瓶了, 今天正好有机会抓取数据回顾下.
当然, Charles并不仅仅只是用来抓取数据学习这么简单,对于程序媛程序猿们来说, 我们也可以利用它来查找 bug.
主要流程:
- 下载安装Charles
- 配置 Charles 根证书
- 在移动设备上配置证书
- 开始抓取数据
Step1. 下载安装Charles
这里我使用的 Charles 是 v4.0.2,安装包可自行百度下载. 当出现双击安装失败情况, 如下图:
则需要更改电脑配置:安全性与隐私里的通用改成任何来源. 但是可能没有这个任何来源选项, 这个时候需要在终端输入这行命令行即可.
sudo spctl --master-disable复制代码
打开 Charles, 展示主页面:
Step2. 配置 Charles 根证书
打开Charles配置按照下图操作:
接着会弹出钥匙串,这个时候根证书还是不被信任的.如下图:
因为系统默认是不信任 Charles 的证书的,我们就需要对证书右键,在弹出的下拉菜单中选择『显示简介』,点击使用此证书时,把使用系统默认改为始终信任,如下图:
当关闭后,就会发现 charles 的证书已经被信任了,如下图:
Step3. 在移动设备上配置证书
选择在测试移动设备上安装 Charles 根证书, 如下图:
选择完成后, 会弹出一个电脑IP地址及端口的提示框,如下图:
如果我们不小心关掉没注意的话, 也可以在网络中找到, 如下图:
进入手机网络设置界面填写:
接着安装上所需要抓取数据的 APP, 如果弹框是未受信任的企业级开发者, 我们则需要通用-设备管理里验证信任就好
若是App Store 的 APP 则需要打开手机的浏览器,输入charlesproxy.com/getssl
会弹出如下界面:
点击安装成功后,则为下图:
Step4. 开始抓取数据
如果当前界面还是没有获取到 https 的数据,我们在 Charles 的SSL Proxy Setting,如下图操作:
勾选Enable SSL Proxying
,点击添加,弹出下面的对话框,Host 表示你要抓取的 ip 地址或是链接,Port 填写 443 即可.
设置完成后,就可以抓取数据了.
至此, 就可以测试喽.