reverse-engineering-api
透過捕捉瀏覽器流量 (HAR 檔案) 進行網路 API 逆向工程,並自動產生可用於自動化與資料擷取的 Python API 客戶端。
簡介
此技能作為自動化工程助理,旨在連結網頁瀏覽與 API 開發之間的鴻溝。它允許使用者將手動的網頁互動(如登入、搜尋或分頁瀏覽)轉化為穩定、可重複使用的 Python API 客戶端。透過利用 Playwright MCP 進行瀏覽器控制與 HAR (HTTP Archive) 流量分析,代理程式能捕獲驅動現代網頁應用程式的底層網路請求,並過濾掉靜態資源、追蹤腳本與廣告,專注於功能性 API 端點。此工具專為開發者、資料工程師與自動化專家設計,適合需要與未公開的 Web 服務整合,或在不依賴脆弱網頁爬蟲的情況下進行程式化資料擷取的需求。
-
瀏覽器自動化:使用 Playwright 模擬人類互動並具備隱身模式,以確保流量捕獲的有效性。
-
HAR 分析流程:運用專用的工具腳本 (har_filter, har_analyze, har_validate) 將雜亂的原始網路流量轉換為結構化的 API 文件。
-
自動程式碼產生:產生結構清晰、包含類型提示且可投入生產環境的 Python 程式碼,並內建錯誤處理與 Session 管理。
-
模式識別:能自動從捕獲的標頭 (Headers) 與負載 (Payloads) 中識別驗證機制、分頁邏輯與請求結構。
-
驗證機制:包含嚴格的驗證階段,並設有 90% 的覆蓋率門檻,確保生成的用戶端能準確反應網頁行為。
-
工作流程:代理程式遵循可追蹤的線性程序:瀏覽器捕獲 -> 流量過濾 -> 端點分析 -> 程式碼產生 -> 驗證。
-
輸入:使用者指定的任務、網頁 URL 以及瀏覽器操作步驟。
-
輸出:結構化的 Python API 模組 (api_client.py)、README 文件以及完整的 HAR 分析記錄。
-
運作限制:需依賴 Playwright MCP 整合;受目標網站的反爬蟲技術影響,可能存在抓取限制。
-
實踐建議:務必使用內建的驗證工具確認生成的程式碼,確保所有端點與標頭(如 CSRF Token、自定義 Cookies)皆正確實作。
倉庫統計
- Star 數
- 664
- Fork 數
- 60
- Open Issue 數
- 1
- 主要語言
- Python
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年5月3日 上午09:15