手机App听包及爬虫攻略

手机App采集手册

手机App的采集其实跟web采集原理是一样的,不一样的地方在于需要通过电脑端去监听app发送和接收的包,其他对包的分析和编写采集代码跟web端相同。
准备工具 分析工具:
  1. fiddler (app听包)
  2. postman (url测试)
编码工具:
  1. httpClient or OKHttpClient (网络请求)
  2. Jsoup(html解析)
听包设置
使用fiddler来监听app的包。需要先设置代理,将手机和电脑连到同一个局域网中。然后在手机上设置代理服务器,该服务器就是安装fiddler的电脑。
第一步就是设置fiddler来监听手机发包
启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开“Fiddler Options”对话框。

手机App听包及爬虫攻略
文章图片
Fiddler操作
在Fiddler Options”对话框切换到“Connections”选项卡,然后勾选“Allow romote computers to connect”后面的复选框,然后点击“OK”按钮。

手机App听包及爬虫攻略
文章图片
Fiddler操作
以IOS为例,点击图片中标注的感叹号进入网络连接界面

手机App听包及爬虫攻略
文章图片

点击配置代理,将代理设为手动

手机App听包及爬虫攻略
文章图片

在ip栏输入电脑的ip,将端口设为8888

手机App听包及爬虫攻略
文章图片

设置完之后,手机就可以通过电脑上网,同时fiddler能监听到app的数据收发。
Https请求的听包设置
Https请求涉及到加密问题,fiddler需要设置https,手机也需要下载一个fiddler的https的认证证书,才能通过fiddler来监听https的请求。
fiddler设置HTTPS,还是在Option里面,打开HTTPS配置项,勾选“CaptureHTTPS CONNECTs”,同时勾选“Decrypt HTTPS traffic”,弹出的对话框选择是(首次点击会弹出是否信任fiddler证书和安全提示,直接点击yes就行)

手机App听包及爬虫攻略
文章图片

手机通过浏览器访问你电脑端的ip地址,我的就是192.168.20.157:8888,点击图中标注部分来下载证书。
手机App听包及爬虫攻略
文章图片
下载完证书之后需要激活证书,IOS在通用->关于本机->证书信任设置中激活。
获取url 当设置完成之后,打开手机App,正常情况下,fiddler就能显示出手机app的请求列表了。如下图所示

手机App听包及爬虫攻略
文章图片

点击一条url,会在右侧显示该url的详细信息

手机App听包及爬虫攻略
文章图片

当拿到需要的url之后,就可以打开PostMan来测试这条URL来看看是否还需要其他参数和查看返回的格式化内容。

手机App听包及爬虫攻略
文章图片

另外一个偷懒的办法来生成获取内容的编码,PostMan也做了。点击发送按钮下的code,按照图示选择,将postMan生成的网络请求代码粘贴到你的采集代码中,前提是你的项目中引入了OKHttpClient包

手机App听包及爬虫攻略
文章图片

生成的代码,代码中可能有参数是需要动态调整的,那就不能写死了。该方法不做推荐,灵活使用

手机App听包及爬虫攻略
文章图片

【手机App听包及爬虫攻略】这里不涉及到防爬策咯,那么剩下的工作就是编码了。
Enjoy Hacking!

    推荐阅读