美文网首页其他
Python采集手机App数据

Python采集手机App数据

作者: 酷飒de小姐姐 | 来源:发表于2021-03-09 14:50 被阅读0次

    配置采集手机App数据和采集网页数据的原理相同,需要先通过网络抓包,拦截App和服务器通信的数据包,然后找到传输的接口和参数,最后使用requests包采集数据。这中间最烦琐的环节是拦截App和服务器通信的数据包,需要使用安卓模拟器及抓包工具,并将安卓模拟器和抓包工具连接起来;也可以直接使用安卓手机代替安卓模拟器,但建议使用闲置手机(不要安装多余的应用),如果使用自己常用的手机,则数据交互频繁容易混淆我们的观察。

    App数据抓包启动抓包的手机和电脑上的Fiddle,在手机中打开要抓包的app,是在手机中打开的App中的页面。

    通过Fiddle可以查看到App传输过程的所有数据包,找到当前排行榜的数据包。理论上,当前数据包应该从捕获到的列表的底部开始向上寻找,这是最快找到数据包的路径。另外,通过数据类型(JSON)、主机(Host)、内容(Body)的大小也可以快速判断目标数据包。如下图所示:

    抓包数据

    已经获取到了目标URL,先测试是否可以在Python中获取数据,直接使用requests.get访问目标URL,代码如下:

    import requests

    print(requests.get('https://######.com/api/v1/game/system/pageSetting').text)

    通过观察发现,目标URL的参数中只有一个page参数是可以控制数据变化的参数,因此先测试是否通过改变page参数就可以让服务器返回不同页码的数据,代码如下:

    for i in range(1,3):

         headers = {'Identify':'69449118'}

        url ='https://**************.com/api/v1/game/pet/illustration?page={}&size=4'.format(i)

        data = requests.get(url,headers=headers)

        print(data.text)

    相关文章

      网友评论

        本文标题:Python采集手机App数据

        本文链接:https://www.haomeiwen.com/subject/nojwqltx.html