オープンソースの Zendriver 代替
Zendriver は nodriver のコミュニティフォークで、高速かつ非同期、CDP のみを使い、Issue トラッカーが開放されていて Docker にも対応しています。nodriver と同じく素の Chrome を操作するため、フィンガープリントは手元のマシンのままです。Clearcote はそのフィンガープリントをエンジン内で変更し、Zendriver から操作することもできます。
Zendriver とは?
Zendriver は、upstream で止まっていたプルリクエストのマージ、静的型付けとリントの追加、そしてプロジェクトをコントリビューションに開くことを目的に始まった、nodriver のフォークです。非同期ファーストで、Selenium も WebDriver も使わずに Chrome DevTools Protocol と直接やり取りし、Linux で GPU アクセラレーションの効いた非ヘッドレスの Chrome を動かすための Docker 構成も用意されています。ライセンスは AGPL-3.0 で、GitHub スターは約 1,400、PyPI の月間ダウンロード数は約 120,000。2026 年 8 月に 0.16 をリリースしました。
Zendriver は nodriver の設計を受け継いでいます。WebDriver の露出は完全になくなりますが、制御する Chrome は改変されていません。Canvas、WebGL、フォント、ハードウェアはホストに由来し、セッションに別のアイデンティティを与える方法はありません。AGPL-3.0 ライセンスはネットワーク利用にも及ぶ強いコピーレフトなので、ホスト型サービスの一部として動かす場合は重要になります。
Clearcote vs Zendriver
| 機能 | Clearcote | Zendriver |
|---|---|---|
| アプローチ | エンジンレベルの C++ パッチ | 素の Chrome を直接操作する CDP クライアント |
| フィンガープリントのアイデンティティ | シードから生成する整合性のあるペルソナ | ホストの実際の値 |
| WebDriver の露出 | なし:CDP で操作 | なし:CDP で操作 |
| Docker | CDP エンドポイント付きの公式イメージ | GPU アクセラレーション対応 Chrome 用の関連イメージ(Linux) |
| TLS / ネットワーク | ClientHello がペルソナの Chrome バージョンに従う | ローカルの Chrome が送るまま |
| インターフェース | Playwright と Puppeteer、加えて生の CDP エンドポイント | 独自の非同期 Python API |
| ライセンス | オープンビルドは BSD-3 | AGPL-3.0(ネットワークコピーレフト) |
| 料金 | オープンビルドは無料、最新ビルドは GitHub で無料、Pro は月額 $49 | 無料・オープン |
比較は 2026年9月 時点のものです。Zendriver のライセンス:オープンソース(AGPL-3.0)。内容は変わることがあるため、最新情報は各プロジェクトでご確認ください。
Clearcote が選ばれる理由
ブラウザが報告する内容を変える
Zendriver は Chrome をすっきり制御できますが、その Chrome は素のままです。Clearcote は Canvas、WebGL、フォント、画面、ハードウェアを、1 つの一貫したペルソナとしてエンジン内で設定します。
1 台のホストから多数のアイデンティティ
シードごとに別のマシンになるので、並列セッションが、実行中のサーバーのフィンガープリントを共有することはありません。
寛容なライセンス
AGPL-3.0 にはネットワークサービスに関する義務があります。Clearcote のオープンビルドは BSD-3 で、そうした義務はありません。
Zendriver と併用可能
Zendriver の browser_executable_path には、Clearcote を含む任意の Chromium バイナリを指定できます。
Zendriver のほうが向いている場合
- nodriver 風の非同期 API が気に入っていて、対象サイトに対してホスト自身のフィンガープリントで問題ない場合。
- 使い方からして AGPL-3.0 で問題ない場合。
- あるいは Zendriver を Clearcote 上で動かす手もあります。バイナリを
browser_executable_pathに、フィンガープリントの引数をbrowser_argsに渡してください。
よくある質問
Zendriver と nodriver の違いは何ですか?
Zendriver は nodriver のフォークで、保留されていた修正のマージ、リントと型付けの追加、Issue トラッカーの開放、Docker サポートの追加を行っています。素の Chrome を直接操作する CDP クライアントという中核のアプローチは同じです。
Zendriver はブラウザフィンガープリントを変えますか?
いいえ。WebDriver 層はなくなりますが、Canvas、WebGL、フォント、画面、ハードウェアは、起動する Chrome と、それが動くマシンに由来します。
Zendriver で Clearcote を操作できますか?
はい。browser_executable_path に Clearcote のバイナリを指定し(パスは SDK の download() が返します)、browser_args で --fingerprint を渡してください。
関連記事
オープンソースの Chromium 代替を試す
無料のオープンソース。Playwright & Puppeteer にそのまま組み込め、TLS ハンドシェイクまで整合性を保ちます。
GitHub があればブラウザ 1 つまで無料。カード登録は不要です。