Cloudflareチャレンジベンチマーク:ブラウザツール比較
Scraping and Proxy Management Expert
TL;DR:
- Cloudflareのチャレンジを本番環境でクリアすることは、ブラウザの問題の前にIPの問題である。 フラグ付きのサーバーIPでパッチを当てたブラウザはインタースティシャルでストールし、クリーンな住宅用出口の実際のブラウザはページをレンダリングする。
- Scrapeless Scraping Browserはオープンで再現可能なベンチマークで8回中7回Cloudflareのチャレンジをクリアした — 測定したすべてのツールの中で最高で、リクエストが自宅のIPからデータセンターのものに移るときに唯一効果を発揮する。
- テストした4つのオープンソースブラウザツールのうち3つ — patchright、camoufox、nodriver — は8回の試行で一度もクリアできなかった、同じターゲットと試行で、それぞれ「もう少しお待ちください…」で動かなくなった。
- 競争した唯一のオープンソースツールであるSeleniumBase UCは8回中6回クリアしたが、これは住宅用IPでのみ行われ、自ホスト型スタックにとって最も有利なケースである。データセンターIPに移るとその利点は消える。
- ここにあるすべての数字は再現可能である。 ハーネスは GitHubのオープンソースCloudflareベンチマーク である:同一のターゲット、各試行に1回の試行、再試行なし、すべてのツールに対するスコアラーは1人。クローンして自分で再実行できる。
- 始めるのは無料。 新しいScrapelessアカウントには無料のScraping Browserランタイムが含まれている — サインアップは app.scrapeless.com。
はじめに:本番環境でCloudflareをクリアするとは
Cloudflareのチャレンジは、ネットワーク問題の衣をまとったレンダリングの問題である。インタースティシャル — 「もう少しお待ちください…」、スピナー、「人間であることを確認中」 — はJavaScriptの負荷を実行し、同時に3つの信号を読む:実際のブラウザがチャレンジを実行しているか、フィンガープリンティングが内部的に一貫しているか、出口IPの評判が良好であるか。いずれかを逃すと、ページは決して解決しない。
ほとんどの解説は「どうやってこれを突破するのか?」と尋ね、ライブラリの推奨やステルスプラグインを提供する。その回答はテスト可能であり、通常、本番サーバーで重要な場所で失敗する。自宅のWi-Fiのラップトップからチャレンジをクリアするツールは、クラウドインスタンスから実行すると非常に異なる振る舞いをする。なぜなら、出口IPが住宅用からデータセンターに変わり、評判の信号が崩壊するからである。
この投稿は、その差を示すのではなく、測定するものである。これは、Scrapeless Scraping Browser を4つのオープンソースのアンチディテクトツールおよびプレインHTTPのベースラインと対比させて実行するオープンベンチマークを通過し、同じCloudflareのチャレンジに対して成功率、レイテンシ、安定性を生の試行データから報告するものである。
何を測定できるか
- ツールごとの成功率 — 実際のページをレンダリングするか、インタースティシャルでタイムアウトするか?
- クリアまでのレイテンシ — リクエストからレンダリングされたコンテンツまでのp50とp95の時間。
- 繰り返し実行時の安定性 — 試行期間にわたる成功率の広がり、そのツールが維持できるかどうかの信号。
- 成功したリクエストあたりのコスト — 公表された出口料金に対してクリアごとに移動したバイト数、したがって「無料」ツールで成功しにくい場合、その真のコストを示す。
- IPの影響 — 住宅用IPとデータセンターIPの同じツールの比較、本番環境で実際に運用される場所。
なぜScrapeless Scraping Browser
Scrapeless Scraping Browserは、ウェブクローラーやAIエージェント向けに設計されたカスタマイズ可能なアンチディテクションのクラウドブラウザである。特にアクティブなチャレンジをクリアするために、以下を提供する:
- 独自開発のChromiumが実際のブラウザのようにチャレンジのJavaScriptを実行し、ヘッダーを推測するHTTPクライアントではない。
- 195カ国以上の住宅用プロキシをデフォルトの出口として、評判の信号がクリーンであることを読み取ることができ、データセンターにフラグが立てられることがない — ほとんどのチャレンジの結果を決定する信号。
- セッションごとのアンチディテクションフィンガープリンティング(ユーザーエージェント、タイムゾーン、キャンバス、WebGL)が内部的に一貫して維持され、フィンガープリンティングチェックを通過する。
- 一般的なチャレンジタイプのネイティブハンドリング — reCAPTCHA v2、Cloudflareターンスタイル、Cloudflareインタースティシャル — 別のソルバーを接続しないで行う。
- クリアされたセッションを温かく保つセッションの持続性により、検証済みのセッションがすべてのリクエストで再検証されるのではなく再利用される。
無料プランでAPIキーを取得するには app.scrapeless.com。
ベンチマークが「クリア」を測定する方法
公平性が全ての要点であるため、ルールはすべてのツールに対して同一である:
- 一つのターゲット、一つの成功の定義。 すべてのツールは同じCloudflareのチャレンジページを読み込み、ベンダーに中立な一つの関数で評価されます:ページは、間欠的なタイトルが実際のページタイトルに変わり、コンテンツが表示されたときにのみクリアされます。「しばらくお待ちください...」は失敗であり、スピナーから決して離れないページも失敗です。
- 一回の試みごとに、一度のチャンス。 どのツールも不良実行を隠すための二回目の割り当てや再接続ループを得られません。これは単一のプロダクションリクエストの振る舞いを反映し、比較を誠実に保ちます - 二度目の試行の予算は、すべてのツールに不公平に良い結果を与えてしまいます。
- 全員に同じタイムアウト。 同じ壁時計の上限がフィールド全体に適用されるため、2分間の試行の後に「成功」するツールは、実際のパイプラインと同じように評価されます。
- コストは測定され、主張されるものではない。 成功したクリアごとのワイヤーバイトはクライアント側で取得され、各ツールの公開された出口料金で掛け算されます。独自のIP上のオープンソースツールはバイトを無料で移動しますが、めったにクリアしないツールは、成功ごとに厳しいコストを抱え、その生の料金はそれを隠します。
フィールド:Scrapeless Scraping Browser; nodriver、patchright、camoufox、およびオープンソースブラウザツールとしてのSeleniumBase(検出されないモード);および基本的なHTTPクライアント。これらのチャレンジを阻止するために構築された自動脅威の語彙は、OWASPの自動脅威に関するプロジェクトにカタログ化されており、三つのシグナルはそれに明確にマッピングされます:TLS 1.3仕様で説明されているTLSハンドシェイク、ブラウザのフィンガープリント、HTTP状態管理の仕様に従って設定されたクリアランスクッキー。Cloudflare自身のチャレンジタイプの説明は、Cloudflareチャレンジのドキュメントにあります。
無料プランのAPIキーを取得します: app.scrapeless.com
レジデンシャルIP上の結果(オープンソースツールのベストケース)
レジデンシャルIPから実行します — 自ホストツールにとって最も好ましい出口で、フィールドは明確に分かれます。各ツールごとに8回の試行、各試行で1回の試み、同じタイムアウト:
評価は8回の試行に対して4段階のスケールを使用します:非常に高い = 7~8/8クリア · 高い = 5~6/8 · 中程度 = 3~4/8 · 低い = 0~2/8。試行の正確なカウントはベンチマークの結果表にあり、すべての評価は実行に遡ります。
| ツール | チャレンジをクリアした | ノート |
|---|---|---|
| Scrapeless Scraping Browser | 非常に高い | フィールド内で最も高く、ほぼすべての試行でクリア |
| SeleniumBase(検出されないモード) | 高い | 競争する唯一のオープンソースツール — このレジデンシャルIPで |
| patchright | 低い | すべての実行でチャレンジに直面し、クリアなし |
| camoufox | 低い | すべての実行でチャレンジに直面し、クリアなし |
| nodriver | 低い | すべての実行でチャレンジに直面し、クリアなし |
| プレーンHTTP(フロア) | 低い | すべてのリクエストで403 |
二つのことが際立っています。まず、自己ホストスタックに最も好意的なフィールドでも、Scrapeless Scraping Browserがフィールドをリードし、より一貫してクリアします。第二に、「アンチディテクトブラウザを使用する」というのは完全な答えではありません:四つのオープンソースブラウザツールのうち三つはチャレンジを一度もクリアせず、迅速に失敗しませんでした — タイムアウトまで間欠的な状態を保持しました。
データセンターIPがプロダクションの物語
レジデンシャルWi-Fiは、スクレイパーが実行される場所ではありません。プロダクションパイプラインはクラウドサーバー上で実行され、クラウドサーバーはCloudflareの評判信号によって非常に異なる方法で扱われるデータセンターIPを通じて退出します。その単一の変化がフィールドを分けます。
CI(データセンターIP、GitHub Actions)で測定され、同じターゲット、各ツールごとに同じ8回の試行、同じ1回の試行ルール:
| ツール | チャレンジをクリアした | p50 | p95 | 平均KB / クリア | $/1k成功 | 安定性σ |
|---|---|---|---|---|---|---|
| Scrapeless Scraping Browser | 高い | 14,274 ms | 26,009 ms | 153.9 | $0.063 | 43.3% |
| seleniumbase-uc | 低い | 58,993 ms | 65,390 ms | — | — | — |
| camoufox | 低い | 56,574 ms | 59,348 ms | — | — | — |
| patchright | 低い | 51,920 ms | 52,302 ms | — | — | — |
| nodriver | 低い | 51,830 ms | 52,886 ms | — | — | — |
| プレーンHTTP(フロア) | 低い | 100 ms | 254 ms | — | — | — |
| 以下の英語のテキストを日本語に翻訳しました: |
SeleniumBase(未検出モード)が投稿した住宅地域の6-of-8は、ここでは何も根拠がありません。データセンターのIPでは、チャレンジをクリアした回数はゼロで、p50/p95の列がその理由を示しています:すべてのオープンソースブラウザツールは、タイムアウトが発生する前に中間ページで約52〜65秒を費やしましたが、何も返しませんでした。プレーンHTTPフロアは、チャレンジを全く実行しないため、100msのp50で「迅速に失敗」します。403エラーを受け取り、終了します。0%のツールには、バイトまたはドルを分割する成功したクリアがないため、コストおよびバイト列は空白です。クリアがない「無料」ツールは、成功ごとのコストが未定義であり、安価ではありません。
データセンターのIPでは、自己ホスティングツールは唯一の利点—クリーンな住宅出口—を失います。なぜなら、それに依存できる自前のクリーンな出口がないからです。Scrapeless Scraping Browserは、その種類に影響を受けず、チャレンジをクリアし続けます。なぜなら、そのリクエストは、ベンチマークプロセスが実行される場所に関係なく、住宅プロキシを経由するからです。これにより、実際に8のうち6(高評価)で14.3秒のp50、成功したクリアごとに測定された$0.063となります。このテストの結果は、実際の環境での運用と一致しています。自前の住宅出口を持つツールだけがチャレンジをクリアし続けており、他のツールは0%を返しています。
これはマネージドクラウドブラウザの正直なケースです。オープンソースツールがCloudflareをクリアできないわけではありません。正しいIPであれば、そのうちの1つはクリアできます。重要なのは、実際にデプロイする環境での信頼性が生き残る特性であるということであり、その特性はエグレスと一貫性から来ており、ステルスパッチからは来ていません。
自分のスタックのためにこれを読む方法
- **ノートパソコンや住宅プロキシで運用していて、ボリュームが少ない場合、**自己ホスティングの未検出ブラウザが機能する可能性があります—メンテナンスと実行ごとのバリアンスを受け入れてください。
- **クラウドサーバーにデプロイする必要があり、一貫性が求められたり、実際の同時実行がある場合、**エグレスの評判問題が壁となり、自前の住宅出口を持つクラウドブラウザが道を示します。自己ホスティングのスタックを維持するためのエンジニアリングコストと比較してください。
- **いずれにせよ、ターゲットで測定してください。**ここで使用されたチャレンジページは公開された練習ターゲットです。あなたのサイトは、より厳しい構成の背後にあるかもしれません。ハーネスは、テストする必要のあるものを指すように構築されています。
クラウドブラウザを操作するためのメカニズム—セッション作成、プロキシ国、レンダリングされたDOMの読み取り—については、Scraping Browserのドキュメントが完全なフローをカバーしており、アンチボットアプローチについては、Cloudflareの保護とターンスタイルをクリアする方法に関するガイドで詳しく説明されています。
結論:信頼性はエグレスの特性
生産環境でCloudflareをクリアすることは3つのシグナルに還元されます—リアルブラウザ、一貫したフィンガープリント、クリーンな出口IP—そして3つ目が自己ホスティングスタックが静かに壊れるところです。住宅IPでは競争があるように見えますが、データセンターIPでは実際のパイプラインが使用されておらず、競争はありません。Scrapeless Scraping Browserは、最も多く、最も一貫してチャレンジをクリアし、プロセスがどこで実行されるかに依存しない唯一の測定ツールです。数字は信頼を求めるものではなく、運用するためのハーネスです。米国の住宅エグレスを固定し、ターゲットページの前に1回サイトを読み込むことでセッションを温め、ホストごとの同時実行を控えめに保ち、測定された成功率で議論を決定してください。
生産環境でCloudflareをクリアする準備ができましたか?
無料プランを請求し、ボット対策パイプラインを構築している開発者とつながるために私たちのコミュニティに参加してください:Discord · Telegram。
app.scrapeless.comにサインアップして無料のScraping Browserランタイムを取得し、パイプラインが必要とするCloudflare保護ページにベンチマークを設定してください。
よくある質問
Q: チャレンジをクリアするためにプロキシは必要ですか?
はい—クリーンなエグレスはほとんどの結果を決定するシグナルです。Scrapeless Scraping Browserはデフォルトで米国の住宅プロキシを使用します。自己ホスティングのツールは自前の住宅エグレスが必要です。データセンターIPでそれがない場合、チャレンジをクリアすることはほとんどありません。
Q: ページが「ちょっとお待ちください...」または「アクセス拒否」と表示されます。クリーンなレンダリングを得るにはどうすればよいですか?
US住宅の出口を固定し、最初にセッションを温めます:ターゲットページを要求する前に、同じセッションでサイトのホームページをロードして、クリアランスクッキーが検証されたセッションに設定されるようにします。並行実行は控えめに保ちましょう — ホストごとに3つのワーカーが平行実行の安全な上限です。
Q: なぜオープンソースツールは私のノートパソコンでチャレンジをクリアするのにサーバーでは失敗するのですか?
あなたのノートパソコンは住宅のIP経由で出口しますが、サーバーは悪い評判のデータセンターのIP経由で出口します。同じツール、同じコード — 出口IPが変わり、それがCloudflareの判断で最も重要なシグナルです。これは、テストで成功したスタックが本番で失敗する最大の理由です。
Q: オープンソースツールはこれをクリアできますか?
はい — SeleniumBaseの未検出モードは、このベンチマークで住宅のIPでチャレンジをクリアしました。重要なのは、自己ホスティングツールが決して機能しないわけではなく、その成功がIPの条件に依存しており、本番では通常取り除かれること、さらにツールとチャレンジが両方変化する中での継続的なメンテナンスが必要だということです。
Q: これらの数値を再現するにはどうすればよいですか?
ハーネスはGitHub上のオープンソースCloudflareベンチマークです。それをクローンし、ツールをインストールし、Scrapeless APIキーを設定し、同じマトリックスを実行してください — 同じターゲット、同じ試行、同じ1回の試行ルールです。それは結果表と生の試行ごとのJSONを書き込むので、すべての数値はそれを生成した実行に追跡でき、データセンターIPの数字はGitHub Actionsランから直接得られます。
Scrapelessでは、適用される法律、規制、およびWebサイトのプライバシーポリシーを厳密に遵守しながら、公開されているデータのみにアクセスします。 このブログのコンテンツは、デモンストレーションのみを目的としており、違法または侵害の活動は含まれません。 このブログまたはサードパーティのリンクからの情報の使用に対するすべての責任を保証せず、放棄します。 スクレイピング活動に従事する前に、法律顧問に相談し、ターゲットウェブサイトの利用規約を確認するか、必要な許可を取得してください。



