- 前面介绍了爬取web 网页的内容,随着移动互联网的发展,越来越多的企业直接开发了APP,更多更全的信息都是通过App来展示的。
- APP的爬取相比web 端爬取更容易一些,反爬虫能力没有那么强,而且数据大多数是以JSON 形式传输的,解析更加简单。
- 在web端,我们是通过浏览器的开发者工具监听各个网络请求和响应过程,在APP 端如果查看相关内容需要借助抓包软件。
- 常用的抓包软件有:WireShark 、Filddler 、 Charles 、 mitmproxy 、 AnyProxy等,他们的基本原理是相同的。
1. Charles的使用
1.1 下载
Charles是目前最强大的http调试工具,在界面和功能上远胜于Fiddler,同时是全平台支持。是收费软件,可以试用15分钟.
官网下载:https://www.charlesproxy.com/download.
1.2 破解
Charles 在线破解工具:https://www.zzzmode.com/mytools/charles/
根据下载的charles版本生成相应的破解文件,mac、windows破解方法一样:将生成的破解文件charles.jar替换本地charles.jar文件。
mac:Charles.app/Contents/Java/charles.jar
windows:Charles\lib\charles.jar
1.3 安装
当你走在看似平坦的大道上的时候,总有那么几个坑等着你,在winodw10系统下=msi等msi格式安装文件错误提示2503、2502,
网上搜了一下,看来遇到的人不少啊,于是乎跟着踩过坑的大佬们学习了一下经验:
https://blog.csdn.net/sinat_30603081/article/details/77929305
经过一晚上的折腾还是没搞定,于是又下载了一个Charles安装包:
https://www.anxz.com/down/20457.html
按照 https://blog.csdn.net/sinat_30603081/article/details/77929305 试了一下居然成功了。哈哈哈哈哈哈哈哈
1.4 配置(windows和安卓)
Charles 是通过将自己设置成代理服务器来完成封包截取的,所以使用 Charles 的第一步是将其设置成系统的代理服务器。
- pc端:
1)打开Charles ,proxy——勾选windows Proxy,时已经可以监听PC端的一切网络连接及流量监控:
2)这里我们打开google浏览器,后会看到左侧栏中有PC访问的网址和端口:
3)win10左下角调出小娜,输入“代理” 然后打开,此时只要运行charles,代理就会自动打开,代理端口默认为8888,可以自行修改。
4)win+R运行cmd后输入ipconfig查看自己PC的ip地址;
5)Charles证书安装
- 安卓手机端:
1)首先PC端和手机端必须连接同一个wifi下,手机打开WIFI页面后,正常情况下,代理那一项为无,此时要修改为手动,输入主机名称即为你自己电脑的IP:192.168.110.xx,端口号为8888。与电脑端一致,IP设置选项不修改,依然为默认的DHCP。确认/保存后,电脑端会弹出让你允许的界面
此时点击allow即可.
2)为手机安装ssl的证书
直接在手机浏览器中输入chls.pro/ssl此时会得到一个getssl.crt文件,安装即可。
这样就配置好了。
1.5 APP爬取