ホームページ >ウェブフロントエンド >jsチュートリアル >Web サイトは Selenium と Chromedriver を検出できますか?また、この検出を回避するにはどうすればよいですか?

Web サイトは Selenium と Chromedriver を検出できますか?また、この検出を回避するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-20 03:30:08781ブラウズ

Can Websites Detect Selenium and Chromedriver, and How Can This Detection Be Bypassed?

Selenium が Chromedriver とともに使用されている場合、Web サイトは検出できますか?

Selenium と Chromedriver は、自動 Web テストに広く使用されている組み合わせです。ただし、一部の Web サイトでは、Selenium が本物のブラウザの動作をエミュレートしようとしているにもかかわらず、ブラウザが Selenium によって制御されていることを検出する対策を実装しています。

Web サイトはどのように Selenium を検出しますか?

Web サイトでは、Selenium の使用を検出するためにさまざまな技術が使用されています。以下を含みます:

  • JavaScript 変数: Web サイトは、Selenium で実行するときに作成され、「selenium」や「webdriver」などの単語を含む事前定義された JavaScript 変数をチェックします。
  • DOM 変数: Web サイトは、$cdc_ や $wdc_ などのドキュメント変数を検査します。
  • HTTP ヘッダー: Web サイトから Web ページを要求する偽のブラウザーは、応答ヘッダーに「no-cache」が含まれることがよくあります。
  • ブラウザのフィンガープリント: Web サイトは、プラグイン、フォント、画面解像度などのブラウザの特性に関する情報を収集します。これらの特性が Selenium の特性と一致する場合、疑惑が生じる可能性があります。

検出をバイパスするように Chromedriver を変更する

Selenium の検出をバイパスする 1 つの方法は、疑わしいものを削除することです。ブラウザ環境からの JavaScript 変数。 Chromedriver コード (具体的には call_function.js ファイル) を変更すると、$cdc_ の名前を別の文字列に変更して、Web サイトから見えないようにすることができます。

検出を回避するその他のテクニック

検出を回避するための追加の手法には次のようなものがあります。

  • 目に見えるユーザー インターフェイスのないヘッドレス ブラウザ (PhantomJS など)
  • ブラウザ拡張機能とプラグインの無効化
  • ランダム ユーザー エージェントの設定
  • ブラウザ フィンガープリントのスプーフィング
  • プロキシの使用サーバー

結論

Web サイトでは Selenium を検出する技術が使用されている可能性がありますが、その仕組みを理解し、対策を実装することで、これらの対策を回避することは可能です。 Chromedriver を変更し、追加の回避手法を利用すると、自動テストのステルス性が強化され、Selenium の使用を妨害しようとする Web サイトによる検出を回避できます。

以上がWeb サイトは Selenium と Chromedriver を検出できますか?また、この検出を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。