CAPSOLVER
ブログ
複数の reCAPTCHA 課題を同時に処理する方法

複数の reCAPTCHA チャレンジを同時に処理する方法

Logo of CapSolver

Sora Fujimoto

AI Solutions Architect

10-Sep-2024

Webスクレイピングを行う際に、遭遇する可能性のある一般的な障害の1つは、CAPTCHAチャレンジです。ウェブサイトはしばしば、ボットが自分のコンテンツにアクセスするのを防ぐためにCAPTCHAを使用します。CAPTCHA(Completely Automated Public Turing test to tell Computers and Humans Apart)は、ユーザーが人間であり、自動化されたボットではないことを確認するために広く使用されている手法です。

このガイドでは、さまざまな種類のreCAPTCHAチャレンジ、ツールを使用してそれらを識別する方法、そして最後に、Pythonスレッドを使用して複数のreCAPTCHAチャレンジを同時に解決する方法について説明します。

Webスクレイピングとは?

Webスクレイピングは、ウェブサイトからデータを抽出するプロセスです。これは、電子商取引ウェブサイトから価格を収集したり、ニュース記事を集めたり、さまざまなウェブソースから情報を集約したりするなどのタスクによく使用されます。スクレイピングには、ウェブサイトにHTTPリクエストを行い、応答からデータを解析することが含まれます。ただし、多くのウェブサイトでは、自動アクセスを防止するためにCAPTCHAを使用しています。

reCAPTCHAチャレンジの種類

reCAPTCHA v2

reCAPTCHA V2は、最も広く使用されているタイプのCAPTCHAであり、「私はロボットではありません」というラベルの付いた「チェックボックス」チャレンジとして表示されます。ユーザーに特定の画像を選択して、人間であることを確認するように求める場合があります。

reCAPTCHA v3

reCAPTCHA V3は、バックグラウンドで動作し、ユーザーの操作をスコア付けして、ボットのような動作を検出します。このシステムは、ウェブサイトにスコアを提供することで、ユーザーエクスペリエンスを妨げるのを避けるように設計されており、これを使用してボットをブロックしたり、追加の検証手順を要求したりできます。

非表示のreCAPTCHA

非表示のreCAPTCHAは、reCAPTCHA v2のよりユーザーフレンドリーなバージョンであり、システムがボットのような動作を疑う場合にのみ、チャレンジが表示されます。

CAPTCHAの種類を特定する

インストール

ウェブサイトで使用されているCAPTCHAの種類を特定するには、次のツールを使用できます。

Capsolverのセットアップ

Capsolverは、プログラムでCAPTCHAチャレンジを解決できるサービスです。CAPTCHAパラメーターを検出するには:

  1. Capsolverにアクセスします。
  2. キーボードの「F12」キーを押して、ブラウザーの開発者ツールを開きます。
  3. Capsolver Captcha Detectorというラベルの付いたタブに移動します。
Capsolver Captcha Detector

CAPTCHAの検出

Capsolverをセットアップしたら、次の手順に従ってCAPTCHAパラメーターを検出します。

  1. Capsolverパネルを閉じずに、CAPTCHAをトリガーするウェブサイトにアクセスします。
  2. CAPTCHAを手動でトリガーします。
  3. CAPTCHAをトリガーする前にCapsolverパネルを閉じないでください

reCAPTCHAの検出

Capsolver Captcha Detectorは、reCAPTCHAsに関する詳細な情報を返すことができます。

reCAPTCHA Detection

reCAPTCHAのキーパラメーター:

  • Website URL
  • Site Key
  • pageAction
  • isInvisible
  • isEnterprise
  • isSRequired
  • isReCaptchaV3
  • API Domain

これらのパラメーターが検出されると、CapsolverはCAPTCHAをサービスに送信するために必要なすべての詳細を含むJSONオブジェクトを返します。

reCaptcha Solver Parameters

複数のreCAPTCHAチャレンジを同時に解決する

Webスクレイピングプロジェクトに取り組んでいる場合、特に複数のCAPTCHAを同時に解決する必要がある場合、CAPTCHAの解決には時間がかかる可能性があります。Pythonを使用して複数のreCAPTCHAチャレンジを同時に解決する自動化方法を以下に示します。

例:複数のreCAPTCHA v2チャレンジを解決する

python Copy
import capsolver
import threading

capsolver.api_key = "Your Capsolver API Key"
PAGE_URL = "PAGE_URL"
PAGE_KEY = "PAGE_SITE_KEY"

def solve_recaptcha_v2():
    solution = capsolver.solve({
        "type": "ReCaptchaV2TaskProxyless",
        "websiteURL": PAGE_URL,
        "websiteKey": PAGE_KEY,
    })
    return solution

def solve_recaptcha_task(result_list, index):
    result = solve_recaptcha_v2()
    result_list[index] = result

def solve_multiple_recaptchas(num_tasks):
    threads = []
    results = [None] * num_tasks

    for i in range(num_tasks):
        thread = threading.Thread(target=solve_recaptcha_task, args=(results, i))
        threads.append(thread)
        thread.start()

    for thread in threads:
        thread.join()

    return results

def main():
    num_tasks = 10  # 同時タスクの数
    print(f"Solving {num_tasks} reCaptcha v2 tasks simultaneously")
    solutions = solve_multiple_recaptchas(num_tasks)
    for i, solution in enumerate(solutions):
        print(f"Solution {i+1}: {solution}")

if __name__ == "__main__":
    main()

複数のreCAPTCHA v3チャレンジを解決する

reCAPTCHA v3を解決するプロセスはv2と非常によく似ていますが、CAPTCHAの種類を適切に調整する必要があります。

python Copy
```python
import capsolver
import threading

capsolver.api_key = "Your Capsolver API Key"
PAGE_URL = "PAGE_URL"
PAGE_KEY = "PAGE_SITE_KEY"

def solve_recaptcha_v3():
    solution = capsolver.solve({
        "type": "ReCaptchaV3TaskProxyless",
        "websiteURL": PAGE_URL,
        "websiteKey": PAGE_KEY,
    })
    return solution

def solve_recaptcha_task(result_list, index):
    result = solve_recaptcha_v3()
    result_list[index] = result

def solve_multiple_recaptchas(num_tasks):
    threads = []
    results = [None] * num_tasks

    for i in range(num_tasks):
        thread = threading.Thread(target=solve_recaptcha_task, args=(results, i))
        threads.append(thread)
        thread.start()

    for thread in threads:
        thread.join()

    return results

def main():
    num_tasks = 10  # 同時タスクの数
    print(f"Solving {num_tasks} reCaptcha v3 tasks simultaneously")
    solutions = solve_multiple_recaptchas(num_tasks)
    for i, solution in enumerate(solutions):
        print(f"Solution {i+1}: {solution}")

if __name__ == "__main__":
    main()

複数のreCAPTCHA v3チャレンジを解決する

reCAPTCHA v3を解決するプロセスはv2と非常によく似ていますが、CAPTCHAの種類を適切に調整する必要があります。

python Copy
```python
import capsolver
import threading

capsolver.api_key = "Your Capsolver API Key"
PAGE_URL = "PAGE_URL"
PAGE_KEY = "PAGE_SITE_KEY"

def solve_recaptcha_v3():
    solution = capsolver.solve({
        "type": "ReCaptchaV3TaskProxyless",
        "websiteURL": PAGE_URL,
        "websiteKey": PAGE_KEY,
    })
    return solution

def solve_recaptcha_task(result_list, index):
    result = solve_recaptcha_v3()
    result_list[index] = result

def solve_multiple_recaptchas(num_tasks):
    threads = []
    results = [None] * num_tasks

    for i in range(num_tasks):
        thread = threading.Thread(target=solve_recaptcha_task, args=(results, i))
        threads.append(thread)
        thread.start()

    for thread in threads:
        thread.join()

    return results

def main():
    num_tasks = 10  # 同時タスクの数
    print(f"Solving {num_tasks} reCaptcha v3 tasks simultaneously")
    solutions = solve_multiple_recaptchas(num_tasks)
    for i, solution in enumerate(solutions):
        print(f"Solution {i+1}: {solution}")

if __name__ == "__main__":
    main()

reCAPTCHA v3チャレンジとreCAPTCHA v2チャレンジを解決する

python Copy
import capsolver

# 環境変数を機密情報に使用することを検討してください
capsolver.api_key = "Your Capsolver API Key"
PAGE_URL_V2 = "PAGE_URL"
PAGE_KEY_V2 = "PAGE_SITE_KEY"
PAGE_URL_V3 = "PAGE_URL"
PAGE_KEY_V3 = "PAGE_SITE_KEY"

def solve_recaptcha_v2(url, key):
    solution = capsolver.solve({
        "type": "ReCaptchaV2TaskProxyless",
        "websiteURL": url,
        "websiteKey": key,
    })
    return solution

def solve_recaptcha_v3(url, key):
    solution = capsolver.solve({
        "type": "ReCaptchaV3TaskProxyless",
        "websiteURL": url,
        "websiteKey": key,
        "minScore": 0.5  # 必要に応じて最小スコアを調整します
    })
    return solution

def main():
    print("Solving reCaptcha v2")
    solution_v2 = solve_recaptcha_v2(PAGE_URL_V2, PAGE_KEY_V2)
    print("Solution (v2): ", solution_v2)

    print("Solving reCaptcha v3")
    solution_v3 = solve_recaptcha_v3(PAGE_URL_V3, PAGE_KEY_V3)
    print("Solution (v3): ", solution_v3)

if __name__ == "__main__":
    main()

ボーナスコード

トップCAPTCHAソリューションのボーナスコードを請求してください。CapSolver: scrape。これを引き換えると、チャージごとに5%のボーナスが追加されます。無制限

詳細については、このブログをご覧ください。

結論

複数のCAPTCHAチャレンジを処理することは、特にウェブサイトがセキュリティ対策を強化するにつれて、Webスクレイピングに取り組んでいる人にとって重要なスキルです。CapsolverなどのツールとPythonのスレッド機能を使用することで、CAPTCHAチャレンジを効率的に自動化し、プロジェクトのスムーズなスクレイピングプロセスを保証できます。

コンプライアンス免責事項: このブログで提供される情報は、情報提供のみを目的としています。CapSolverは、すべての適用される法律および規制の遵守に努めています。CapSolverネットワークの不法、詐欺、または悪用の目的での使用は厳格に禁止され、調査されます。私たちのキャプチャ解決ソリューションは、公共データのクローリング中にキャプチャの問題を解決する際に100%のコンプライアンスを確保しながら、ユーザーエクスペリエンスを向上させます。私たちは、サービスの責任ある使用を奨励します。詳細については、サービス利用規約およびプライバシーポリシーをご覧ください。

もっと見る

クラウドフレア エラー 1006、1007、1008
クラウドフレア エラー 1006、1007、1008 解決の方法 | 修正方法

Cloudflareのエラー1006、1007、または1008に苦しんでいますか?これらのアクセス拒否を解決し、ウェブクローリング体験を向上させる実用的な解決策を学びましょう。

Cloudflare
Logo of CapSolver

Sora Fujimoto

05-Dec-2025

AI-LLM: リスク管理の未来のソリューション 画像認識およびCAPTCHAの解決
AI-LLM: リスクコントロールのための画像認識とCAPTCHA解決の未来のソリューション

LLMsがグラフィカルCAPTCHAの解決をどのように変革するかの詳細な探求:ゼロショット推論とCNNの精度を融合した現代のリスク管理へのアプローチ

web scraping
Logo of CapSolver

Sora Fujimoto

05-Dec-2025

Webスクレイピング中にCAPTCHAを解く方法:ScraplingとCapSolverを使って
ScraplingとCapSolverを用いたウェブスクラッピング時のキャプチャの解き方

Scrapling + CapSolver は、ReCaptcha v2/v3 および Cloudflare Turnstile のバイパスを備えた自動スクリーピングを可能にします。

web scraping
Logo of CapSolver

Sora Fujimoto

05-Dec-2025

SeleniumでUser-Agentを変更する
SeleniumでのUser-Agentの変更 | ステップとベストプラクティス

SeleniumでUser Agentを変更することは、多くのウェブスクレイピングタスクにおいて重要なステップです。これは自動化スクリプトを通常のブラウザのように見せかけるために役立ちます...

The other captcha
Logo of CapSolver

Sora Fujimoto

05-Dec-2025

Cloudflare Turnstileを解決するためには`action`が必要かどうかを識別する方法 – CapSolver拡張機能を使用して
CapSolver拡張機能を使用してCloudflare Turnstileを解決する際に`action`が必要かどうかを確認する方法

クラウドフレア・ターニスティルの効果的なCAPTCHAの解決方法を学びます。Capsolverのツールとテクニックを使用するためのステップバイステップのガイドに従ってください。

Cloudflare
Logo of CapSolver

Nikolai Smirnov

05-Dec-2025

9プロキシ
9Proxyの力の発見: 包括的なレビュー

本記事では、9proxyとは何かおよび彼らが提供するサービスについてご紹介します。

Partners
Logo of CapSolver

Anh Tuan

04-Dec-2025