zoukankan      html  css  js  c++  java
  • 手机app抓包

    简介

    爬虫是cs架构中的c端 原理是模拟浏览器向服务器发送请求
    
    如果要爬取手机APP的数据,APP也是服务端与浏览器性质相同
    我们只要获取到手机APP给服务器发送数据 并加以分析就能模拟它的请求 从而获取到数据
    
    实现思路:
        在app和服务器之间设置一个代理服务器
        1.app的请求先发送给代理服务器
        2.代理服务器把请求转发给真实服务器
        3.真实服务器返回数据给代理服务器
        4.代理服务器将数据返回给app客户端

    需要的工具软件

    1.Charles  代理服务器
    2.postman/paw 模拟请求的工具

    手机APP爬取流程

    参考教程 https://www.jianshu.com/p/4635aa405568
    1.charles安装并启动
        默认 Proxy(代理)->选择Windows Proxy 可以直接代理windows请求 抓取windows软件的请求数据
        取消Windows Proxy 就可以断开代理windows
    
    2.要抓取手机APP 让手机与charles所在的电脑处于同一局域网中(连接同一个wifi即可)
        如果没有wifi可以将电脑的网络进行共享(win10自带热点共享 其他系统可以安装网络共享工具)
     
    3.将手机的代理服务器设置为charles(将代理服务器与手机设置为同一端口) 
        代理服务器 -> Proxy -> Proxy Settings ->可以查看端口号
        安卓手机 点击链接打wifi 找到代理 选择手动 填写主机名与路由器的地址一致,端口为服务器的端口地址
        苹果 蓝色感叹号 默认代理 选择手动 服务器与路由器的地址一致,端口为服务器的端口地址
    
    4.连接后charles会有一个弹出框,选择allow即连接成功
    
    5.如果是HTTP请求 可以直接获取数据
    如果要获取HTTPS请求 需要安装证书
    给电脑安装证书:
      1.Proxy -> SSL Proxying Settings 勾上Enable SSL Proxying 
        -> Add Host:*(所有都代理) Port:443(HTTPS的端口) ->OK
      2.装证书:Help ->  SSL Proxying -> Install Charles Root Certificate ->安装证书 ->本地计算机 -> 将所有证书都放入下列存储 ->收信任的根证书颁发机构 ->导入成功 我们可以在管理用户证书中看到该证书
    
    给手机安装证书:
        Help ->  SSL Proxying -> Install Charles Root Certificate on a Mobile ...
        -> 手机浏览器访问chls.pro/ssl ->下载证书(如果下载的是*.pem文件要改名为*.crt 不然无法安装)
        ->给手机安装证书 以小米手机为例:点击设置-更多设置-系统安全-加密与凭证-从存储设备安装/从SD卡安装-找到刚才浏览器下载证书的路径选择安装,为这个证书起名-点确定完成安装-回到Charles,我们就可以看到https请求下的数据了
        
  • 相关阅读:
    变量的创建和初始化
    HDU 1114 Piggy-Bank (dp)
    HDU 1421 搬寝室 (dp)
    HDU 2059 龟兔赛跑 (dp)
    HDU 2571 命运 (dp)
    HDU 1574 RP问题 (dp)
    HDU 2577 How to Type (字符串处理)
    HDU 1422 重温世界杯 (dp)
    HDU 2191 珍惜现在,感恩生活 (dp)
    HH实习 acm算法部 1689
  • 原文地址:https://www.cnblogs.com/lizeqian1994/p/10751304.html
Copyright © 2011-2022 走看看