iOS抓包最简单方案( 二 )

iOS抓包最简单方案
文章插图
图片
这里我们使用了两个第三方库,分别是haralyzer和brotli 。其中的haralyzer是用来解析HAR文件;brotli是用来对数据进行解压缩 。
在一般情况下,其他网站的HAR解析,代码到text = entry['response']['content']['text']就可以了 。返回的text直接就是人眼可读的内容了 。但Jump稍微特殊一些,因为它返回的内容经过压缩,所以获取到的是Base64字符串 。如果我们直接打印,就会看到:

iOS抓包最简单方案

文章插图
图片
这个Base64不能直接解码,因为解了以后是二进制信息 。从之前Stream的响应Headers里面,我们可以看到这个数据是经过br压缩的,如下图所示:
iOS抓包最简单方案

文章插图
图片
【iOS抓包最简单方案】所以需要使用brotli解压缩:brotli.decompress(base64.b64decode(text)).decode() 。
现在你已经拿到返回数据的JSON信息了 。那么接下来要对数据进行怎么样的处理,都不再是问题了 。
总结
  1. 安装Stream并设置根证书
  2. 打开抓包功能
  3. 打开目标App或者微信小程序,让流量经过Stream
  4. 关闭抓包功能,从抓包历史里面找到目标请求的URL规则
  5. 筛选出所有需要的请求,导出为HAR文件
  6. 使用Python解析HAR文件
当你熟练以后,整个过程不超过3分钟就能完成 。




推荐阅读