Skip to main content
この記事では、ユーザーが Recaptcha3 の認証画像を認識したりクリックしたりすることなく、Website Key を提出するだけでバックエンドで自動的にデコードを実現し、認証を完了できる Recaptcha3 プロトコル認識 API の接続説明を紹介します。

申請プロセス

Recaptcha3 プロトコル認識 API を使用するには、まず Ace Data Cloud コントロールパネル にアクセスして API トークンを取得し、保管してください。 まだログインまたは登録していない場合は、自動的にログインページにリダイレクトされ、登録とログインを促されます。完了後、現在のページに自動的に戻ります。 1つの API トークンでプラットフォームのすべてのサービスを呼び出すことができ、各サービスごとに個別に申請する必要はありません。 初回申請時には無料のクレジットが付与され、無料で体験できます。クレジットが不足した場合は、コントロールパネル で共通残高をチャージできます。
📘 完全なドキュメント:Recaptcha3 プロトコル認識 API →

基本的な使用法

まず、基本的な使用方法を理解します。Recaptcha2 と比較して、追加のパラメータ page_action を渡す必要があります。このパラメータはコード内で取得する必要があります。今回表示するネットワーク URL は:https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php です。以下に取得方法の一例を示します。

ショートカット方法:

F12 を開き、Element ページで .execute( を検索します。赤い枠の領域で action パラメータが表示され、同時に execute の後に続く一連の文字列もあります。これも後で必要な内容です。具体的には以下の図のようになります。

次に、処理する必要がある CAPTCHA のウェブサイト URL を入力する必要があります。まず、単純に website_url フィールドを渡し、最後に website_key パラメータを入力します。この内容は上記で取得できるもので、execute の後に続く一連の文字列です。次に、画面上に対応する内容を入力できます。以下の図のように:

ここでは、リクエストヘッダーを設定しました。内容は以下の通りです:
  • accept:受け取りたいレスポンス結果の形式。ここでは application/json、つまり JSON 形式を記入します。
  • authorization:API を呼び出すためのキー。申請後、直接ドロップダウンから選択できます。
さらに、リクエストボディを設定しました。内容は以下の通りです:
  • page_action:CAPTCHA のウェブサイトコードから取得する必要があります。
  • website_url:処理する CAPTCHA のウェブサイト URL。
  • website_key:Recaptcha3 のウェブサイトキー識別子。
選択後、右側にも対応するコードが生成されていることがわかります。以下の図のように:

「Try」ボタンをクリックするとテストが実行され、上の図のように以下の結果が得られました:
結果には複数のフィールドが含まれており、以下のように説明されています:
  • token、今回のRecaptcha3の検証結果です。
Recaptcha3の検証結果を取得できたことがわかります。これをPOSTまたはGETでターゲットサイトに送信するために使用できます。一度限りの使用で、有効期限は120秒です。60秒以内の使用を推奨します。次に、生成されたトークンをターゲットサイトに送信する方法を簡単に紹介します: トークン検証に対応するPythonのコードを呼び出します:
したがって、結果を得ることができます:
ここで、successはこの検証の処理結果を示しており、私たちはRecaptcha3の検証に成功したことがわかります。 また、対応する接続コードを生成したい場合は、生成されたものを直接コピーできます。例えば、CURLのコードは以下の通りです:
Python の対接コードは以下の通りです:

非同期モード(async)

デフォルトでは API は同期ブロッキングです:1回のリクエストはトークン処理が完了するまで待機します。もし複数のソルバーを回転させる場合、「タスクを提出した後、すぐに task_id を取得し、他のソルバーを調整し、後で結果を取得する」ことを希望する場合は、リクエストボディに async: true を渡すことができます。 async: true を渡すと、インターフェースはすぐに task_id を返し、ブロックして待機しません:
その後、この task_id を使用して POST /captcha/tasks をポーリングします(3〜5秒ごとを推奨):
処理中は status: processing が返されます:
処理が完了すると status: ready とトークンが返されます:
料金説明:非同期モードでは、タスクの作成と「処理中」のポーリングは課金されません;結果を成功裏に取得したときにのみ1回課金されます(同期モードの価格と同じです)。したがって、回転中に未完了のタスクをキャンセルしても費用は発生しません。/captcha/tasks はすべての CAPTCHA インターフェース(トークンと認識シリーズ)に共通で、同じ task_id でポーリングできます。

エラーハンドリング

API を呼び出す際にエラーが発生した場合、API は対応するエラーコードと情報を返します。例えば:
  • 400 token_mismatched:不正なリクエスト、パラメータが欠落または無効な可能性があります。
  • 400 api_not_implemented:不正なリクエスト、パラメータが欠落または無効な可能性があります。
  • 401 invalid_token:未承認、無効または欠落した認証トークン。
  • 429 too_many_requests:リクエストが多すぎます、レート制限を超えました。
  • 500 api_error:内部サーバーエラー、サーバーで何かがうまくいきませんでした。

エラー応答の例

結論

この文書を通じて、Recaptcha3 プロトコルを使用してユーザーが Recaptcha3 CAPTCHA 画像を認識し、クリックすることなく、Website Key を提出するだけでバックグラウンドで自動的にデコードし、検証を完了する方法を理解しました。この文書が API の接続と使用に役立つことを願っています。ご不明な点がございましたら、いつでも技術サポートチームにお問い合わせください。