在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
前言目的:解决 Android 7.0+ 已安装证书抓取https数据还是unknown问题
Q : 大部分网站web网站上都能找到,为什么还要用安卓去爬取App和小程序的内容呢? A : 这是因为APP和小程序的反爬机制比较弱,特别是小程序,以及App和小程序上有些内容可以直接得到,不需要解析,所以会抓取App和小程序的数据是必须要会的。 Q : 为什么要用模拟器而不是直接用安卓机呢? A :Android 7.0+ 已经不认用户证书了,只认系统证书,就算安装了用户证书Charles抓取的https数据也是unknown,而要把用户证书更改为系统证书需要root权限,然后对证书进行一系列的更改。(如果有影响到爬取速度后续会开一篇Android 7.0+的抓包) Q : 这篇博客对这个模拟器的所有版本都适用吗? A :不是,不同版本安装证书的方法也不一样,然后有一大堆乱七八糟的问题,这里还是建议和我下载一样6.2.7.1的版本吧,这个模拟器最新的已经到Android 7了,应该也要root权限进行一系列的更改操作才能抓到。 难度系数:一星 工具: 安卓模拟器官网(下载6.2.7.1版本):https://www.yeshen.com/blog/version/ Charles下载官网:https://www.charlesproxy.com/download/ Charles**:https://www.zzzmode.com/mytools/charles/(直接替换jar即可) 也可以到我的百度盘直接下载全部的工具,Charles(win64含**)+安卓模拟器 百度盘链接 提取码:kinf 一:Charles(附**)1.安装Charles 打开官网Charles下载官网找到系统对应的Charles下载,这里需要 F-Q ,不然下载会很慢。下载好后更改下路径无脑next就可以了。 2.**Charles 2.1打开Charles**网站,RegisterName随便写一个名字,选择Charles对应的版本,点击生成 2.2下载jar文件 2.3替换jar包,找到Charles的安装位置,进入lib目录下 2.4把下载的jar包拖进去替换就可以了 3.查看是否**成功 双击Charles.exe文件打开,Help --> About Charles 有Registered字样说明**成功了 二:代理设置1.查看Charles中ip和端口号 Help --> Local IP Address --> 第一个即为Charles的ip Proxy --> Proxy Settings --> Http Proxy(port) --> 即为Charles的端口,Charles默认端口是8888,如果不是8888就改成8888吧 2.模拟器中更改代理 2.1先下载好模拟器夜神模拟器 2.2把模拟器改成手机版吧更好截图 设置 --> 性能设置 --> 手机版 --> 保存设置 --> 立即重启
2.3 设置代理 打开设置 点击WLAN 鼠标长按 --> 修改网络 高级选项 --> 手动 --> 填入你Charles中的ip和端口 --> 保存 三:证书安装(可参考夜神模拟器(6.2.7)安装证书视频)Charles中保存证书(因为模拟器中开了代理网址进不去,就选用了本地安装证书的方法) 随便打开一个模拟器的文件夹,把电脑中保存的Charles.pem拖到模拟器的文件夹里面,会弹出文件中转站,先点击打开电脑文件夹,然后点击打开手机文件夹 勾选Charles.pem 点击左上角菜单进入文件管理器 --> 内部存储设备 --> Others 点击左下角的三点 --> 会弹出操作栏 --> 粘贴选择项
好了,Charles.pem被粘贴到模拟器了 设置 --> 安全 --> 从SD卡安装 找到SD卡中Charles.pem的位置单击Charles.pem
随便写个名称就可以了 --> 确定 pin码或者密码 --> 确定 绘制两次 如何通知随便选就行,点击完成后会显示Charles已安装 然后你就可以看到https中的内容可以被抓取到了 小程序抓取,模拟器中下载微信,登录后搜索小程序就可以啦
|
请发表评论