工程開發
reverse-engineering-api avatar

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
在 GitHub 查看