成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一日一技:iOS抓包最簡單方案

開發 前端
現在你已經拿到返回數據的JSON信息了。那么接下來要對數據進行怎么樣的處理,都不再是問題了。

寫過爬蟲的同學都知道,當我們想對App或者小程序進行抓包時,最常用的工具是Charles、Fiddler或者MimtProxy。但這些軟件用起來非常復雜。特別是當你花了一兩個小時把這些軟件搞定的時候,別人只用了15分鐘就已經手動把需要的數據抄寫完成了。

我的需求

如果你不是專業的爬蟲開發者,那么大多數時候你的抓包需求都是很小的需求,手動操作也不是不能。這種時候,我們最需要的是一種簡單快捷的,毫不費力的方法來解放雙手。

例如我最近在玩《塞爾達傳說——王國之淚》,我有一個小需求,就是想找到防御力最大的帽子、衣服和褲子來混搭。這些數據,在一個叫做『Jump』的App上面全都有,如下圖所示:

圖片圖片

防具總共也就幾十個,肉眼一個一個看也沒問題,就是費點時間而已。那么,如果我想高效一些,有沒有什么簡單辦法通過抓包再加上Python寫幾行代碼來篩選,快速找到我想要的數據呢?

手機上的操作

實際上,方法非常簡單。我們只需要在手機上安裝一個App,叫做『Stream』,如下圖所示:

圖片圖片

這個軟件在App Store國區就可以下載。

第一次打開這個App的時候,我們設置一下根證書,點擊下圖中箭頭指向的這個按鈕:

圖片圖片

他會一步一步指導你安裝根證書。整個過程不超過30秒,這里我就不再贅述了。

安裝完成根證書以后,我們點擊『開始抓包』按鈕。此時,手機上面所有的流量就會經過Stream并抓取下來。

我們打開Jump App,找到防具列表,然后不停往下滑動屏幕,直到滑到最下面。

然后回到Stream,點擊『停止抓包』按鈕。抓包過程就完成了。

我們點擊『抓包歷史』按鈕,找到剛剛抓到的數據包,如下圖所示:

圖片圖片

按域名進行篩選,方便找到Jump App發送的HTTP請求。如下圖所示:

圖片圖片

打開請求以后,點擊『響應』-『查看響應』按鈕,如下圖所示:

圖片圖片

我們就能看到如下圖所示請求體,這確實就是防具對應的數據包,如下圖所示:

圖片圖片

我們現在,需要使用篩選功能,選出所有獲取防具信息的后端請求。所以先到『請求選項卡』,查看一下URL的規律,如下圖所示:

圖片圖片

回到請求列表頁,點擊右上角的放大鏡進行篩選,如下圖所示:

圖片圖片

篩選以后,只有5個請求了,如下圖所示:

圖片圖片

最后一步,我們點擊右上角的『編輯』按鈕,選中所有請求,并點擊右下角的『導出HAR』,如下圖所示:

圖片圖片

大家可以使用AirDrop或者微信發送到電腦上。到此為止,手機上的所有操作就已經結束了。接下來我們來到電腦上,寫一段Python代碼來解析這個HAR文件。

寫一點點代碼

這段代碼非常簡單,大家可以直接復制:

import json
import brotli
import base64
from haralyzer import HarParser


with open('/Users/kingname/Downloads/Stream-2023-07-06 22:08:44.har') as f:
    har_parser = HarParser(json.loads(f.read()))


data = har_parser.har_data
entries = data['entries']
for entry in entries:
    text = entry['response']['content']['text']
    content = brotli.decompress(base64.b64decode(text)).decode()
    info = json.loads(content)
    print(info)

運行效果如下圖所示:

圖片圖片

這里我們使用了兩個第三方庫,分別是haralyzer和brotli。其中的haralyzer是用來解析HAR文件;brotli是用來對數據進行解壓縮。

在一般情況下,其他網站的HAR解析,代碼到text = entry['response']['content']['text']就可以了。返回的text直接就是人眼可讀的內容了。但Jump稍微特殊一些,因為它返回的內容經過壓縮,所以獲取到的是Base64字符串。如果我們直接打印,就會看到:

圖片圖片

這個Base64不能直接解碼,因為解了以后是二進制信息。從之前Stream的響應Headers里面,我們可以看到這個數據是經過br壓縮的,如下圖所示:

圖片圖片

所以需要使用brotli解壓縮:brotli.decompress(base64.b64decode(text)).decode()。

現在你已經拿到返回數據的JSON信息了。那么接下來要對數據進行怎么樣的處理,都不再是問題了。

總結

  1. 安裝Stream并設置根證書
  2. 打開抓包功能
  3. 打開目標App或者微信小程序,讓流量經過Stream
  4. 關閉抓包功能,從抓包歷史里面找到目標請求的URL規則
  5. 篩選出所有需要的請求,導出為HAR文件
  6. 使用Python解析HAR文件

當你熟練以后,整個過程不超過3分鐘就能完成。

責任編輯:武曉燕 來源: 未聞Code
相關推薦

2021-04-27 22:15:02

Selenium瀏覽器爬蟲

2024-12-27 00:44:44

MarkdownPrompt大模型

2021-10-15 21:08:31

PandasExcel對象

2025-05-28 03:15:00

Scrapy數據sleep

2021-04-12 21:19:01

PythonMakefile項目

2022-06-28 09:31:44

LinuxmacOS系統

2023-10-28 12:14:35

爬蟲JavaScriptObject

2021-09-13 20:38:47

Python鏈式調用

2024-11-13 09:18:09

2021-03-12 21:19:15

Python鏈式調用

2024-07-30 08:16:18

Python代碼工具

2021-04-05 14:47:55

Python多線程事件監控

2022-03-12 20:38:14

網頁Python測試

2024-07-30 08:11:16

2021-04-19 23:29:44

MakefilemacOSLinux

2022-02-16 20:36:30

瀏覽器PythonJavaScript

2024-11-11 00:38:13

Mypy靜態類型

2024-05-24 09:07:06

JSONprint字符串

2021-07-27 21:32:57

Python 延遲調用

2021-10-03 20:08:29

HTTP2Scrapy
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费久草| 天堂久久网 | dy天堂 | 国产在线视频一区二区董小宛性色 | 欧美激情国产精品 | 国产精品成人国产乱 | 永久免费在线观看 | 狠狠综合久久av一区二区小说 | 亚洲高清免费 | 亚洲精品第一 | 国产丝袜一区二区三区免费视频 | 91在线网 | 毛片软件| 一区二区三区亚洲 | av电影手机版 | 99re热精品视频 | 精品久久久久久久久久久久久久 | 亚洲激情在线观看 | 亚洲欧美精品在线观看 | 亚洲日韩中文字幕一区 | 国产乱码精品一品二品 | 欧美视频在线播放 | 免费看黄色视屏 | 欧美日韩亚洲一区 | 国产中文 | av网站免费看 | 99色综合 | 国产精品三级久久久久久电影 | 欧美一区二区三区日韩 | 9久9久9久女女女九九九一九 | 久久99国产精一区二区三区 | 一区欧美 | 中文字幕精品一区二区三区精品 | 久久久影院 | 国产日韩欧美一区 | 成人av久久 | 国产一区二区三区欧美 | 91精品国产91久久久久青草 | 成人性视频免费网站 | 欧美精品日韩精品国产精品 | 精品国产乱码久久久久久图片 |