
Sora Fujimoto
AI Solutions Architect

ウェブセキュリティ対策が進歩するにつれて、reCAPTCHA v3 Enterpriseは、ボットと人間のユーザーを区別する最も洗練された方法の1つになりました。reCAPTCHA v2とは異なり、reCAPTCHA v3は目に見えずに動作し、ユーザーのインタラクションを評価して、「ボットのような」または「人間のような」スコアを割り当てます。Web自動化に取り組む開発者にとって、reCAPTCHA v3 Enterpriseを解決することは、特に人間の行動を模倣する高いスコアを取得しようとする場合、困難な場合があります。しかし、PythonやSeleniumなどの適切なツールを使用すれば、この課題は管理可能になります。
この記事では、環境のセットアップから、reCAPTCHA v3の課題を解決するコードの実装まで、手順を追って説明します。
reCAPTCHA v3 Enterpriseは、GoogleのCAPTCHAシステムのより高度なバージョンで、ユーザーエクスペリエンスを妨げることなく、自動化されたトラフィックを検出するように設計されています。以前のバージョン(例:reCAPTCHA v2)は、ユーザーに画像をクリックしたり、チェックボックスをクリックしたりするよう求めていましたが、reCAPTCHA v3はバックグラウンドで目に見えずに動作し、機械学習アルゴリズムを使用して、各ユーザーアクションにリスクスコアを割り当てます。
reCAPTCHA v3は、ユーザーに視覚的な課題を提示する代わりに、0から1までのスコアを割り当てます。スコアが0に近いほどボットのようなアクティビティを表し、1に近いほど人間の行動を表します。ウェブサイトはこのスコアを使用して、特定のアクションをブロックするか許可するかを判断できます。
reCAPTCHA v2とは異なり、reCAPTCHA v3は目に見えずに動作し、目に見えるCAPTCHAの課題が表示されない場合があります。ただし、reCAPTCHAウィジェットは、Webページのバックグラウンドにまだ存在します。それを検出するには、WebページのHTMLを検査し、g-recaptchaを含んでいるか、GoogleのCAPTCHA APIを参照している要素を探します。
以下は、reCAPTCHA v3の存在を特定する方法です。
ページの確認: ブラウザで開発者ツールを開きます(ページを右クリックして「検証」を選択します)。HTML ソースで以下を探します。
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
検出の自動化: Selenium を使用して reCAPTCHA をプログラムで検出できます。
try:
driver.find_element(By.XPATH, "//script[contains(@src, 'recaptcha/api.js')]")
print("reCAPTCHA v3 が検出されました")
except:
print("reCAPTCHA が検出されませんでした")
reCAPTCHA v3 Enterprise のような複雑な CAPTCHA チャレンジに対処する際には、ボットとしてフラグ付けされることなく、ウェブ自動化の難題を克服するのに役立つ信頼できるツールが必要です。CapSolver が活躍する場面です。
トップの CAPTCHA ソリューションのための ボーナスコード を請求してください。 CapSolver: WEBS。コードを使用すると、チャージごとに 5% の追加ボーナスがもらえます。無制限
始める前に、次のものがあることを確認してください。
reCAPTCHA v3 Enterprise の解決を開始するには、CapSolver パッケージをインストールする必要があります。次のコマンドを使用してインストールします。
pip install capsolver
このパッケージを使用すると、CapSolver API とインターフェースできます。この API は、reCAPTCHA v3 Enterprise を含むさまざまな CAPTCHA チャレンジを処理するために特別に設計されています。
プロキシを使用する場合は、reCAPTCHA v3 Enterprise を解決し、0.7 から 0.9 の間のヒューマンライクなスコアを取得することを目的とした Python スクリプトを以下に示します。
import capsolver
from urllib.parse import urlparse
# これらの値を変更してください
PROXY = "http://username:password@ip:port"
capsolver.api_key = "YourApiKey"
PAGE_URL = ""
PAGE_KEY = ""
PAGE_ACTION = ""
def solve_recaptcha_v3_enterprise(url, key, pageAction):
solution = capsolver.solve({
"type": "ReCaptchaV3EnterpriseTask",
"websiteURL": url,
"websiteKey": key,
"pageAction": pageAction,
"proxy": PROXY
})
return solution
def main():
print("Solving reCAPTCHA v3 Enterprise...")
solution = solve_recaptcha_v3_enterprise(PAGE_URL, PAGE_KEY, PAGE_ACTION)
token = solution["gRecaptchaResponse"]
print("Solution Token: ", token)
if __name__ == "__main__":
main()
PROXY: この値を http://username:password@ip:port の形式で実際に使用しているプロキシの詳細に置き換えてください。プロキシを使用する場合は、疑わしいとフラグ付けされないように、信頼性の高いプロキシであることを確認してください。
capsolver.api_key: "YourApiKey" を実際の CapSolver API キーに置き換えてください。CapSolver ダッシュボード にログインして、このキーを生成できます。
PAGE_URL: reCAPTCHA v3 Enterprise を含む Web サイトの URL に置き換えてください。
PAGE_KEY: これは Web サイトの reCAPTCHA キーで、ページから抽出する必要があります。
PAGE_ACTION: reCAPTCHA で評価される特定の動作。この値の探し方は このガイド で確認できます。
プロキシを使用しない場合、スクリプトはよりシンプルになります。プロキシなしで reCAPTCHA v3 Enterprise を解決する方法を以下に示します。
import capsolver
from urllib.parse import urlparse
# これらの値を変更してください
capsolver.api_key = "YourApiKey"
PAGE_URL = ""
PAGE_KEY = ""
PAGE_ACTION = ""
def solve_recaptcha_v3_enterprise(url, key, pageAction):
solution = capsolver.solve({
"type": "ReCaptchaV3EnterpriseTaskProxyless",
"websiteURL": url,
"websiteKey": key,
"pageAction": pageAction
})
return solution
def main():
print("reCAPTCHA v3 Enterprise を解決しています...")
solution = solve_recaptcha_v3_enterprise(PAGE_URL, PAGE_KEY, PAGE_ACTION)
token = solution["gRecaptchaResponse"]
print("ソリューショントークン: ", token)
if __name__ == "__main__":
main()
プロキシの使用: 同じ IP から複数のリクエストを送信する場合は、ローテーションプロキシを使用して、ボットとしてフラグ付けされるリスクを最小限に抑えることを検討してください。
人間らしいインタラクション: reCAPTCHA v3 は、ユーザーの行動に基づいてスコアを割り当てます。人間らしいスコアを得る確率を高めるには、自動化されたインタラクション(クリック、スクロール、ナビゲーション)が実際の人間の活動に類似していることを確認してください。アクション間にランダムな遅延を導入すると、自動化がより自然に見えます。
スコア 0.7-0.9 に最適化: CapSolver は、reCAPTCHA v3 を解決する際に 0.7 から 0.9 の人間らしいスコアを提供するように設計されています。このようなスコアに自動化を最適化する方法の詳細については、この CapSolver ブログ記事 をご覧ください。
「reCAPTCHA 無効なサイトキー」や「無効なreCAPTCHAトークン」のエラーに直面していますか?一般的な原因、ステップバイステップの修正手順、トラブルシューティングのヒントを確認してください。reCAPTCHAの検証失敗の問題を解決する。reCAPTCHAの検証失敗を修正する方法を学びましょう。もう一度試してください。

PythonとAPIを使用してreCAPTCHA v2を解決する方法を学びましょう。この包括的なガイドでは、プロキシとプロキシレスな方法をカバーし、自動化に使用可能な本番環境対応のコードを提供しています。
