このプロジェクトについて
Obscuraは、WebスクレイピングとAIエージェントの自動化を目的とした、Rustで書かれたオープンソースのヘッドレスブラウザエンジンです。Chromiumをラップするのではなく、独自のレンダリングエンジンを実装し、組み込みのV8を通じて実際のJavaScriptを実行し、Chrome DevTools Protocolを公開することで、既存のPuppeteerやPlaywrightのスクリプトが接続できるようになっています。
READMEに記載されている主な機能:
- Chromiumなしでのレンダリング: CSSレイアウトとペイント、ビューポートおよびフルページのスクリーンショット、スクロールを考慮したfixed/stickyジオメトリ、CDPスクリーンキャスティング、ラスターPDFエクスポート。READMEでは、進化中の独立したエンジンであるため、ロングテールCSS、一部のWeb API、メディア再生、コンポジターエフェクト、プラットフォームフォントのラスタライズがChromiumと異なる場合があると述べられています。
- CDP互換性: Target、Page、Runtime、DOM、Network、Fetch、IO、Storage、Inputドメインに加え、DOM-to-Markdownヘルパー。PuppeteerはbrowserWSEndpoint経由で、PlaywrightはconnectOverCDP経由で接続します。
- CLIワークフロー: 単一ページ向けの`fetch`(html/text/links/markdown/assets/originalのダンプ、JS eval、待機条件、スクリーンショット、出力ファイル)、並列マルチURLスクレイピング向けの`scrape`(並行性とJSON/テキスト出力)、CDP WebSocketサーバーを起動する`serve`。
- ステルスモード: セッションごとのフィンガープリントランダム化(GPU、画面、キャンバス、オーディオ、バッテリー)、現実的なuserAgentData、isTrustedイベント、ネイティブ関数のマスキング、webdriverのundefined化、大規模なトラッカードメインリストのブロック。
- MCPサーバー: stdioまたはHTTP経由で、Claude DesktopやCursorなどのAIエージェントにブラウザ自動化ツールを公開します。
- デプロイ: Linux x86_64/ARM64、macOS Intel/Apple Silicon、Windows、NixOS向けのプリビルドバイナリに加え、distroless Dockerイメージ。ビルドバリアントでレンダリングとステルスを切り替え可能。ステルスビルドはBoringSSLをコンパイルし、CMake/Clang/libclangが必要です。
- 運用制御: HTTP/SOCKS5プロキシサポート、robots.txtオプション、明示的なプライベートネットワーク上書きを伴うSSRF保護、V8フラグのパススルー、設定可能なスクリプト/モジュールのタイムアウトとネットワーク本文バッファ制限。
READMEには、ヘッドレスChromeとのベンチマーク比較や、ホスト型のObscura Cloudの提供についても記載されており、オープンソースエンジンはApache-2.0のままで完全な機能を備えていると述べられています。スポンサーシップのセクションではプロキシプロバイダーについて言及されています。
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.