本文へスキップ

オープンソースの playwright-stealth 代替

playwright-stealth は、Python の Playwright にステルス機能を加える最も手軽な方法です。ラッパーを 1 つかませるだけで、すべてのページに一連の JavaScript の検知対策が入ります。ただしその検知対策は素のブラウザに対する上書きで、メンテナー自身も概念実証(PoC)だと位置づけています。Clearcote はそれらの値をエンジン内でネイティブに設定するので、ページが見つけられる上書きがそもそもありません。

playwright-stealth とは?

playwright-stealth は、puppeteer-extra-plugin-stealth を Playwright 向けに Python へ移植したものです。AtuboDad による元の移植版は 2023 年から更新されておらず、現在 PyPI のパッケージ名はメンテナンスされているフォーク(Mattwmaster58)が引き継いでいます。このフォークは API を整理した 2.0 をリリースし、滞っていたプルリクエストの一部もマージしました(最新リリースは 2.0.3、2026 年 4 月)。MIT ライセンスで非常に広く使われており、PyPI の月間ダウンロード数は約 3M です。

仕組みとしては、主にすべてのコンテキストに初期化スクリプトを登録し、それぞれが 1 つずつ痕跡をパッチします。navigator.webdriver、navigator.languages、プラグイン、WebGL ベンダー、chrome.runtime などです。メンテナーは限界について率直で、README には、最も単純なボット検知以外は回避できると期待しないようにと書かれており、出発点という位置づけです。理由は構造的なものです。JavaScript による上書きは Function.prototype.toString やプロパティディスクリプタのチェックで見破られますし、ページの初期化スクリプトは Web Worker には届きません。さらに、ラッパーがいくつかの起動フラグと User-Agent・Sec-CH-UA ヘッダーを設定するものの、Playwright ドライバー自身の CDP の副作用や TLS ハンドシェイクには、パッケージのどこも手を付けていません。

Clearcote vs playwright-stealth

機能Clearcoteplaywright-stealth
アプローチ エンジンレベルの C++ パッチ:ネイティブな値 素のブラウザ上の JavaScript 初期化スクリプト
検知されうる継ぎ目 なし:ページ、iframe、ワーカーのすべてでネイティブ toString、ディスクリプタ、ワーカーでの再読み取りで上書きが露見
フィンガープリントのアイデンティティ 1 つのシードから生成する整合性のあるペルソナ(Canvas、WebGL、フォント、navigator) ホストの実際の値の上に、手作業で設定した少数の値
ドライバー / CDP の副作用 起動時(isolated world)とエンジン内で抑制 未対応、素の Playwright ドライバー
TLS / ネットワークの整合性 ClientHello が名乗る Chrome バージョンに従う TLS は未対応、設定するのは User-Agent と Sec-CH-UA ヘッダーのみ
フレームワーク Playwright と Puppeteer(Python、Node、.NET) Playwright(Python)
導入方法 ブラウザのバイナリを差し替える 1 行で Playwright をラップ
料金 オープンビルドは無料、最新ビルドは GitHub で無料、Pro は月額 $49 無料・オープン(MIT)

比較は 2026年11月 時点のものです。playwright-stealth のライセンス:オープンソース(MIT)。内容は変わることがあるため、最新情報は各プロジェクトでご確認ください。

実測:同じ 10 サイトで 12 個のツールを比較

オープンソースの browsers-benchmark ハーネスを 5 回実行しました(最終実行は 2026年10月27日)。各ツールはそれぞれ専用の米国住宅用 IP で、実行ごとに異なる順序で動かしています。「成功」とは、そのサイト向けのハーネス自身のチェックが、ブロックページやチャレンジページではなく本来のページを確認したことを意味します。 Clearcote は Windows デスクトップ(最新ビルド)で計測し、その他のツールは Linux サーバーで計測しました。

ハーネスは playwright-stealth のフォークである tf-playwright-stealth をテストしています。該当する行には印を付けています。

本来のページに到達したページ読み込みの割合(ツール別、ヘッドフル/ヘッドレス)
ツールヘッドフルヘッドレス
Clearcote0.63.2 · r5278%39/5080%40/50
Camoufox0.5.8 · v156.0.1-beta.3672%36/5080%40/50
Invisible Playwright0.43.0 · Firefox76%38/5078%39/50
CloakBrowser0.6.474%37/5064%32/50
SeleniumBase (CDP mode)4.49.0 · Chrome74%37/50—
nodriver0.50.6 · Chrome74%37/5040%20/50
Zendriver0.17.1 · Chrome64%32/5060%30/50
tf-playwright-stealth (Firefox)1.2.058%29/5062%31/50
tf-playwright-stealth (Chromium)1.2.056%28/5050%25/50
Playwright (Chromium)1.62.056%28/5030%15/50
Playwright (Firefox)1.62.054%27/5054%27/50
Patchright1.64.3 · Chrome24%12/5026%13/50

サイト:検索結果ページ, コミュニティフォーラム, ソフトウェア企業のサイト, 高級品小売店, マーケットプレイスの商品ページ, チケット販売サイト, ファッション小売店, 旅行予約サイト, 航空会社, ソーシャルネットワーク。 これは 1 つのネットワーク、1 週間分のスナップショットです。結果はリリースやプロキシ、サイト自体の変化によって毎回変わり、すべてのサイトを毎回読み込めたツールはありませんでした。生データ(JSON)。

Clearcote が選ばれる理由

上書きではなく、ネイティブ

playwright-stealth の検知対策は、どれも本物のブラウザ関数を JavaScript の関数に置き換えるもので、その置き換えは外から観測できます。Clearcote は Chromium の内部で値を変えるので、ページが調べる関数は本物のネイティブ関数のままです。

どのレルムでも同じ値

初期化スクリプトがパッチするのはページです。同じ値を Web Worker や新しい iframe から読み直すと、パッチされていない元の値が返ります。エンジンレベルの値なら、どこで読んでも一致します。

いくつかの項目ではなく、アイデンティティ全体

--fingerprint のシード 1 つから、Canvas、WebGL、オーディオ、フォント、画面、ハードウェアにわたって一貫したマシンが生成されます。実ホストの上にいくつかの上書きを重ねるのとは違います。

Playwright のコードはそのまま

Clearcote は Chromium のバイナリです。executable_path にそのパスを指定するか SDK の launch() を使えば、Playwright スクリプトの残りはそのままで動きます。

playwright-stealth のほうが向いている場合

  • 判定の緩い対象サイトで 5 分ほどで何か試したく、ブラウザのバイナリを管理したくない場合。
  • 対象サイトが navigator.webdriver のようなわかりやすい痕跡しかチェックしない場合。
  • すでに Clearcote を使っていて、playwright-stealth がまだ必要か知りたい場合。答えは「不要」です。その検知対策はエンジンがすでに設定している値と重複しており、上から JavaScript の上書きを重ねると、エンジンが取り除いた継ぎ目が戻ってきてしまいます。

よくある質問

playwright-stealth は今でも使えますか?

今もインストールして動かせますし、メンテナンスされているフォークの最新リリースは 2.0.3(2026 年 4 月)です。十分かどうかは対象サイト次第です。README 自身が、対応できるのは最も単純な検知だけだと注意しています。JavaScript による上書きは検知されうるうえ、ドライバー層と TLS 層には手を付けていないためです。

playwright-stealth と Clearcote の違いは何ですか?

playwright-stealth は素の Chromium に JavaScript を注入して、一連の値を上書きします。Clearcote は、それらの値がネイティブで、フレームやワーカーをまたいでも一貫し、その下の TLS フィンガープリントも一致する改造 Chromium です。どちらも普通の Playwright で操作します。

playwright-stealth と Clearcote は併用すべきですか?

いいえ。エンジンがすでに整合性のある値を返しており、その上に JavaScript の上書きを重ねると、ネイティブ関数が検知されうる関数に置き換わってしまいます。Clearcote は素の Playwright で起動してください。

Node.js 版の playwright-stealth はありますか?

Node で同等のものは、playwright-extra と puppeteer-extra の stealth プラグインの組み合わせで、同じく JavaScript で上書きする設計です。Clearcote は Python・Node・.NET のどれからでも同じように使えます。

どこまで深いか

比較したどのフォークと比べても 2 倍以上のパッチ数。

Chromium にコンパイルされたパッチの数を、アプローチ別に示します。スクリプトベースのツールはエンジンをまったく変更しません。

ステルスプラグイン

例:puppeteer-extra-plugin-stealth

0

パッチ済みドライバー

例:undetected-chromedriver、nodriver

0

他の Chromium フォーク

無料ビルドと有料ビルド

35–87

Clearcote Pro

r57、Chromium 156

240

公開されているパッチ数(2026年10月 時点)。範囲は他のフォークの無料ビルドと有料ビルドを含みます。Clearcote の数値は Pro ビルドのものです。

試す

365 項目のチェックを、無料で、あなたのブラウザで

すべての Clearcote ビルドに課しているフィンガープリントテストです。今お使いのものでも実行して比べてみてください。

テストを実行
読む

オープンビルドのパッチは公開されています

無料のオープンビルドは BSD-3 で、ソースから再現でき、アカウントも不要です。Pro ビルドは、その上に非公開のパッチを加えています。

GitHub で開く
リリースを追う

エンジンのリリース 57 回、Chromium メジャーバージョン 7 世代

すべてのパッチを新しい Chromium ごとに移植しています。最新ビルドは新しいメジャーバージョンに公開当日に対応します。

リリースを見る

関連記事

ドキュメントMigrating from playwright-stealth or PatchrightReplace one line: clearcote.launch() returns a Playwright browser with the fingerprint set in the engine. What to remove from your script.Q&AWhy does Function.toString() reveal a hooked function?Calling toString() on a native function returns “[native code]”; an override returns its own source instead — so detectors stringify APIs to catch JavaScript spoofs.Q&APlaywright vs Puppeteer for stealth: does it matter?Both drive Chromium over CDP, so both leak the same automation artifacts. Stealth comes from the browser binary and launch defaults, not the framework you pick.比較Clearcote vs puppeteer-extra-plugin-stealthstealth プラグインは、Puppeteer に検知対策を後付けする方法として今も最も多くインストールされており、週に 100 万以上ダウンロードされていますが、2023 年 3 月以降リリースがありません。検知対策はどれも素の Chrome に当てる JavaScript のパッチで、JavaScript のパッチは自らの存在を露呈します。Clearcote はそれらの値をエンジン内でネイティブに設定します。比較Clearcote vs CamoufoxCamoufox は Firefox ベースの、よくできたオープンソースのアンチディテクトブラウザです。Clearcote は同じエンジンレベルのアプローチを Chromium で実現しているため、自動化で見せるブラウザが、利用者約 3% のものではなく、Web の約 66% が実際に使っているものになります。比較Clearcote vs CloakBrowserCloakBrowser は多くのユーザーを抱える、実力のあるエンジンレベルのステルス Chromium ですが、パッチ済みのバイナリはクローズドソースです。Clearcote も同じくエンジンレベルで、すべてのパッチを読んで再ビルドできるオープンビルドを提供しています。比較Clearcote vs undetected-chromedriverundetected-chromedriver は今も月間ダウンロード数が約 2.5M ありますが、最終リリースは 2024 年 2 月です。素の Chrome 上で Selenium/ChromeDriver の継ぎ目を隠すもので、フィンガープリントやネットワーク層には一切手を付けません。Clearcote はその両方をエンジン内で変えます。

オープンソースの Chromium 代替を試す

無料のオープンソース。Playwright & Puppeteer にそのまま組み込め、TLS ハンドシェイクまで整合性を保ちます。

ブラウザ 1 つまで無料:GitHub、カード確認、または会社の Google アカウント。請求は一切ありません。