zoukankan      html  css  js  c++  java
  • 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,安装完成后打开修改如下设置:

    Capture HTTPS CONNECTs(捕获 HTTPS 连接)
    Decrypt HTTPS traffic (HTTPS 请求解密)
    安装证书(首次使用无证书,会弹出是否信任fiddler证书和安全提示,直接点击yes就行)

     

    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))
  • 相关阅读:
    postgresql-磁盘空间不足问题排查
    postgresql-删除重复数据
    postgresql-排序
    磁盘耗时时间
    nginx 报错 The plain HTTP request was sent to HTTPS port
    nodejs使用pkg打包
    npm 设置镜像源
    IDEA通过Ctrl+鼠标滚轮放大/缩小字体
    使 nodejs 代码 在后端运行(nohup)
    加密HSQLDB的.script文件
  • 原文地址:https://www.cnblogs.com/54sen/p/8878057.html
Copyright © 2011-2022 走看看