Python3 采集APP数据及相关配置
第一次搞APP,咱就找个简单的先入个门,这里我就以追书神器为例吧
我采用的工具,如下:
夜神模拟器(安装APP)、Fiddler(抓包)、Pycharm(敲代码)
前期配置方面我是以这几位前辈的经验来进行的,贴它:
https://www.jianshu.com/p/724097741bdf
https://blog.csdn.net/qq_37275405/article/details/81181439
https://www.cnblogs.com/zengxuejie/p/11526152.html
这仨可以综合借鉴下,完成配置不成问题
如果不想看上面的,那配置这一块儿咱就简单说下,我这给分为三步
第一步、电脑上下载安装 Fiddler,安装完成后打开修改如下设置:
Allow remote computers to connect(允许其他设备连接)
Fiddler listens on port:8888(端口号,默认:8888)
上述两处都设置好后重启 Fiddler 生效!
第二步、电脑上下载安装 夜神模拟器,安装完成后打开修改如下设置:
可以先通过Fiddler 的 Online 查看IP地址,也可以 cmd -> ipconfig 查看
然后就是配置桥接,实现网络互通(在同一个IP段上)
我这里用的是台式机,笔记本的也一样,最终网络互通即可
配置完网络后,接下来安装证书,在夜神模拟器上通过浏览器访问电脑的IP+端口(默认8888),结果如下图:
第三步、安装证书,设置代理
点击下载证书
下载完成后,双击安装
保存重启模拟器
在模拟器上安装APP,模拟器上的请求都会被Fiddler抓取到!!!
到这里已经配置完了,其实APP的具体采集代码与web端采集并无明显区别
咱们先看看Fiddler上的响应连接,如下图:
贴代码,瞅瞅是不是挺简单的
1 #!/usr/bin/python 2 # -*-coding:utf-8 -*- 3 import json, requests 4 5 6 def info_get(url): 7 head = { 8 'X-Device-Id': '863254010188612', 9 'X-User-Agent': 'ZhuiShuShenQi/4.55.1 (Android 5.1.1; Xiaomi Sagit / Xiaomi MI 6; CHINA MOBILE)[preload=false;locale=zh_CN;clientidbase=]', 10 'x-android-id': 'bc3d85bb2fa34378', 11 'User-Agent': 'ZhuiShuShenQi/4.55.1 (Android 5.1.1; Xiaomi Sagit / Xiaomi MI 6; CHINA MOBILE)[preload=false;locale=zh_CN;clientidbase=]', 12 'Host': 'b01.zhuishushenqi.com', 13 'Connection': 'Keep-Alive', 14 'Accept-Encoding': 'gzip', 15 } 16 res = requests.get(url=url, headers=head, timeout=3, verify=False) 17 return res 18 19 20 if __name__ == '__main__': 21 item = {} 22 url = "http://b01.zhuishushenqi.com/category/fuzzy-search?alias=ns_xuanhuan&packageName=com.ushaqi.zhuishushenqi&sort=1&cat=东方玄幻&start=0&limit=30" 23 res = info_get(url).json() 24 print(json.dumps(res, ensure_ascii=False))