app爬虫

火山小视频app爬虫(For iOS)

  • 本教程分为iOS跟Android两个版本

环境: macOS + Charles(抓包工具)+iPhone SE(iOS 13)

准备工作:

  1. Charles 选择Proxy->Proxy Settings 将HTTP Proxy设置为8899,点击OK


    page1image63692304.png
  1. 查看本机IP
page2image63468336.png
  1. 打开手机设 打开设置--WLAN 点击Wi-Fi名右边的感叹号--选择底部配置代理--代理(改为手动)--填入代理服务器主机名(第2步中的IP)--填入代理服务器端口(图1设置的8899)
page2image63467296.png

page3image63440096.png
  1. 打开浏览器,地址栏中输入chls.pro/ssl安装证书。
page3image63439056.png

page4image63690016.png

点击允许后,去设置中的通用--描述文件 从这里可以看到已下载的描述文件Charles Proxy CA.点击描述文件--右上角安装。


page4image63685024.png

page5image63620944.png

至此描述文件安装完成,但此时抓包工具Charles https的数据包还是无法解析,具体原因是iOS9.0之后,安装完描述文件后,需要打开 设置--关于本机--证书信任设置 选择针对根证书启用完全信任


page5image63620528.png
page6image47160880.png

至此,就可以愉快的使用Charles来解析数据包了。

开始抓包

  1. 首先在应用商店中下载火山小视频app。

  2. 打开Charles,此时弹出窗口提示有新的连接,选择Allow允许即可。

image-20190911152320066.png
  1. 此时所有的手机流量会通过Charles进行代理,以至于Structure中连接的数量居多。我们可以利用Charles的过滤功能,仅留下我们需要的火山小视频的连接
image-20190911151353099.png
  1. 通过分析各数据包,找到信息流中所在的数据包。
image-20190911151547954.png
  1. 此时我们可以用python编写爬虫,发送模拟的GET请求,拿到数据进行解析。
    模拟此HTTP请求需要需要URL,请求头('Host','User-Agent','Cookie'),以及参数(从Charles中获得)

火山小视频app爬虫(For Android)

  • Android版本略微复杂,主要原因是Android 7.0之后默认不信任用户添加到系统的CA证书。带来的后果是如果Android版本大于等于7,在安装完Charles的证书之后,还是只能抓取http内容,加密的https是无法解析的。

  • 目前有三种解决方案:

    1. 需要反编译app

      • 在源码中AndroidManifest.xml文件中添加如下配置:
          <manifest ... >
           <application android:networkSecurityConfig="@xml/network_security_config"
           ... >
          ...
          </application>
          </manifest>
      
      • 然后在res目录下新建一个xml文件夹,之后在res/xml/路径下新建文件network_security_config.xml
           <network-security-config>
           <domain-config>
           <domain includeSubdomains="true">你要抓取的域名</domain>
           <trust-anchors>
           <certificates src="@raw/证书文件名"/>
           </trust-anchors>
           </domain-config>
          </network-security-config>
      
      • 在res目录下新建一个raw文件夹,将手机上安装的证书文件放入res/raw/目录下,证书格式:pem,ca等(chales的话就是将你在手机浏览器打开http://charlesproxy.com/getssl下载的证书放入即可),步骤2中的证书文件名,就是你放入res/raw/目录下文件的名字

        至此,配置完重新运行项目,就可以看到报文了。

    2. 将抓包软件的证书安装成系统证书(需ROOT不建议)

      • 系统证书目录:/system/etc/security/cacerts/

      • 其中的每个证书的命名规则如下: <Certificate_Hash>.<Number> 文件名是一个Hash值,而后缀是一个数字。

      • 文件名可以用下面的命令计算出来
        openssl x509 -subject_hash_old -in <Certificate_File>

        将抓包软件的证书用上述命令计算出 Hash 值,将其改名并复制到系统证书目录. 此时你应该可以在 设置->安全->加密与凭据->信任的凭据 的系统标签页看到你新加入的证书,将其启用即可顺利抓包

    3. Android模拟器 市面上现有的android模拟器(如:夜神模拟器、网易MuMu模拟器)安卓版本都在Android7.0以下,可以完美安装抓包软件证书。*

环境: macOS + Charles(抓包工具)+Android 4.4(夜神模拟器)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,219评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,363评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,933评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,020评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,400评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,640评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,896评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,597评论 0 199
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,327评论 1 244
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,581评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,072评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,399评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,054评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,083评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,849评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,672评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,585评论 2 270

推荐阅读更多精彩内容

  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 2,617评论 0 3
  • 摘要:mitmproxy是一个支持HTTP和HTTPS的抓包程序,有类似Fiddler、Charles的功能,只不...
    朝畫夕拾阅读 1,908评论 0 2
  • 摘要:mitmproxy是一个支持HTTP和HTTPS的抓包程序,有类似Fiddler、Charles的功能,只不...
    朝畫夕拾阅读 7,086评论 0 1
  • 我的孤独 被叫做了沉默 是远方传来轻柔的马达声 送走了阳光下的喧嚣 无人话语 心早已被安放 静坐在世界的转角 凡尘...
    深白树阅读 220评论 0 0
  • 早上吃好早餐早早的就去了税务局,天气骤降,凉风习习,路上的人们赶着快节奏忙碌的步伐,路上的车辆你追我赶,十字路口的...
    刘韩旭妈妈阅读 116评论 0 1