browser-use/cdp-use

🩹Pure CDP but type-safe in Python

解決的問題

CDP Use 為 Python 開發者提供了一種與 Chrome DevTools Protocol (CDP) 進行類型安全互動的方式。它消除了向 Chrome 發送命令或處理事件時的猜測與手動類型檢查,以結構化、自動產生的客戶端程式庫取代手動的 JSON-RPC 呼叫。

工作原理

此專案是一個程式碼產生器,會下載官方的 Chrome DevTools Protocol 規格,並自動轉換為 Python 綁定。它使用 TypedDict 類別確保每個命令參數與回傳值皆嚴格類型化,提供完整的 IDE IntelliSense 與自動補全支援。該程式庫依領域模組(例如 Page、Network、DOM)分離,以維持結構清晰。

適用對象

需要透過 CDP 對 Chrome 瀏覽器進行深度、類型安全控制的 Python 開發者,例如開發瀏覽器自動化工具、網路爬蟲或基於瀏覽器的 AI 代理。

主要亮點

  • 自動產生綁定:程式碼直接從官方規格產生,確保程式庫能隨 Chrome 更新而保持最新。
  • 完全類型安全:為所有命令與事件處理器提供 TypedDict 提示,可在開發階段而非執行階段捕獲錯誤。
  • 類型安全的事件註冊:提供結構化系統,用於註冊特定瀏覽器事件的回呼函數,並驗證其簽名。
  • 領域分離:將 CDP 的 50 多個領域組織成獨立模組,提升可維護性與可讀性。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案