Menu

AntiGateタスクでキャプチャをバイパスする方法

AntiGateタスクのチュートリアルの新しいビデオバージョンは、利用可能ですこれ

長年の研究開発を通して、弊社はロボットに人間の作成されたキャプチャゲートを通過させるユニバーサルソリューションを作成しました。「AntiGate」といいます。人間の作業員が特定のタスクを実行するためのシナリオテンプレートを使っています。

ある時点で、お客様のアプリは、新しい種類のキャプチャ、難読化されたブラウザスクリプトなどの、自動化保護「ゲートウェイ」に遭遇します。この場合、AntiGateタスクの出番です。ワーカーの1人を委任して実際の人間のブラウザセッションを構築するのです。
  • まず、テンプレートを選択します。既存のものまた独自に作成したものも利用できます。テンプレートとは、ワーカーが実行するステップバイステップの命令のセットです。
  • 次に、ンプレートに必要な追加データを提供します。たとえば、入力の値、入力のCSSセレクター、移動先のアドレスなど。テテンプレートについては、後ほど詳しく説明します。
  • それから、プロキシをオプションで選択します。各セッションCookieを正確なIPアドレスに関連付けるウェブサイトの場合は必要とされるようになります。
この3つを持って、私たちのAPIを使ってタスクを作成します。ワーカーは私たちの特別なブラウザプラグインを使ってあなたのウェブサイトにナビゲートし、すべてのシナリオステップを手動または自動で実行します。そしてスクリプトの最後に、クッキー、ローカルストレージ値、ブラウザフィンガープリントのようなブラウザのセッション情報をすべて取得し、あなたのアプリに送り返します。あとは、このデータを使ってワーカーのセッションを復元し、あたかも人間のユーザーであるかのように操作を続けるだけです。どうです、すごいでしょう?)

AntiGateテンプレートとは?

AntiGateテンプレートは、ワーカーが実行する正確なシナリオを定義します。テンプレートはステップで構成され、すべてが順番に実行されます。1つのステップが完了すると、ワーカーは次のステップに進みます。すべてのステップが完了すると、タスクが終了し、ワーカーセッションのスナップショットが取得され、アプリに送り返します。

どんなステップがありますか。
  • 自動または手動で入力フィールドに内容を入力します。
  • 内容の例がページに表示(または非表示)されるのを待ちます。
  • WCSSで定義されたDOM要素がページに表示される(またはページから消える)のを待ちます。
  • キーワードがワーカーの現在のブラウザーのアドレスに表示(またはまたは非表示)されるのを待ちます。
テンプレートの「ワーカーの説明」テキストフィールドには、ワーカーの他の手順を記述できます。例:「キャプチャを解決して送信ボタンを押します」。
例を見てみましょう。開発者センターに移動し、テストのために無料のテンプレートを作成します。心配しないでください、何も壊れたりしません!
クリックしてテンプレートを追加します
クリックして例をロードします
手順セクションにご注意ください
デモ版をロードしました。アカウントに保存して、後で自分でテストすることができます。テンプレートプロパティの完全なリストは下記となります。
  • テンプレート名.一度保存すると、この名前は変更できません。公開すると、テンプレートはAPIでこの名前で利用できるようになります。
  • ユーザーのための説明。パブリックテンプレートは、テンプレートカタログで利用できます。
  • 作業員向け説明.これがページ上部に表示されるテキストである。
    ワーカーインターフェイスの例
  • 変数.これは、恒久的な値の代わりにステップで使用するために追加できる変数名のリストです。この例では、"login "と "password "という2つの変数があります。この2つは、デモのサインインフォームを埋めるために、ステップ1と2で使用されます。このように、テンプレートに永続的なログイン名とパスワードをハードコーディングする代わりに、API経由でこれらの値を提供することができます。
    ステップ1と2で使用される変数
  • 労働者の歩み.ここで、シナリオのステップの順番を編集、変更することができます。この例では以下のようにします:
    1.テキストフィールドにCSSセレクター「#login」が自動的に入力されます。テキストフィールドの値は、変数「ログイン」によって定義されます。
    2.テキストフィールドにCSSセレクター「#password」が自動的に入力されます。テキストフィールドの値は、変数「パスワード」によって定義されます。
    3.コントロールテキストがページに表示されるのを待ちます。値「ログインで合格したテスト」に永続的に設定されます。

これでテンプレートが保存され、開発者センターに表示されます。その場合、ステータスが「サンドボックス」であることに注意してください。これは、自分だけが利用でき、APIでは利用できないことを意味します。そこから、ワーカーのように、新しく作成したテンプレートをテストしてみることができます。

テンプレートのテスト

現在では、Chromeブラウザを使用する必要があります。プロフィールのCookieにアクセスするプラグインをインストールする必要があるため、このブラウザで新しいユーザープロフィールを作成することをお勧めします。
ワーカーインターフェイスの例
次に、テンプレートカードで、「テスト」ボタンを押します。
指示に従って、あなたのプラットフォーム用のプラグインをダウンロードしてください。ログイン "と "パスワード "変数にランダムな値を入力し、"Launch Test "ボタンを押してください。以下のような新しいページが開くはずです:

アドレスバーの近くに、ターゲットページの上部に追加されたプラグインの青いバーがあります。ワーカーがこれを利用して割り当てを確認し、タスクの実行を制御します。

また、ログインフィールドとパスワードフィールドは、変数を入力するときに非表示になります。このようになっているのです。ワーカーは開発者コンソールを介してタスクデータに完全にアクセスできますが、彼らの99.99%は、そこで何が起こっているのかをわざわざ調べていません。
Recaptchaを解決するには、「ログイン」ボタンを押します。それでテンプレートの最後のステップ「WAIT_CONTROL_TEXT_PRESENT」が入力されます。プラグインは、テンプレートで「ログインで合格したテスト」(永続的に定義されている制御フレーズ)を検索します。その後、タブが自動的に閉じ、セッションスナップショットが結果フィールドに表示されます。
結果の例

そのスナップショットのデータはAPIからの受信できます。ただし、テンプレートをAPIに適用するには、まず、テンプレートを公開する必要があります。

テンプレートの公開

テンプレートを公開する際に、プライベートまたはパブリックという2つのオプションがあります。
  • プライベートテンプレートは、APIキーでのみ使用できます。他のユーザーは利用できません。レビューと公開の費用:1ドル。
  • パブリックテンプレートは誰でも利用できます。このテンプレートを使用すると、ユーザーの費やした費用の%5を獲得できます。テンプレートに問題が発生した場合に、サポート提供のための連絡先を残す必要があります。レビューと公開の費用:1ドル。
弊社すべてのテンプレートを注意深くレビューしております。本番モードに正常に切り替えるには、下記のように、いくつかの基本的な要件を満たす必要があります。
  • いかなる種類の違法行為はありません。
  • 既存のテンプレートと重複してはなりません。
  • 未完成のまたはテストテンプレートを提出しないでください。
  • レビュー用にウェブアドレスと変数値の例を提供してください。こちらでテストを行う際に、すべての手順が正常に完了する必要があります。

APIリクエスト

上記のAntiGateテンプレートの場合、APIへのタスク作成リクエストは、次のようになります。

curl -i -H "Accept: application/json" \
     -H "Content-Type: application/json" \
     -X POST -d '{
    "clientKey":"YOUR_API_KEY",
    "task":
        {
            "type":"AntiGateTask",
            "websiteURL":"https://anti-captcha.com/demo/?page=recaptcha_v2_textarea",
            "templateName":"Demo sign-in at anti-captcha.com #123456",
            "variables": {
                "login":"some value",
                "password":"some value"
            }
        }
}' https://api.anti-captcha.com/createTask

つまり、「templateName」パラメータと「variables」パラメータをテンプレートに入力します。

タスク結果の使用

AntiGateタスク戻るが正常に完了しました。これは、「cookies」、「localStorage」、「fingerprint」、「url」を含むソリューションです。 あなたのソフトウェアがすべきことは、このリクエストで「クッキー」を使って「url」にナビゲートし、ブラウザのUser-Agentに少なくとも「fingerprint.self.navigator.userAgent」の値を使うことです。より複雑なウェブサイトは localStorage に重要なデータを保存します。これは一種の現代版クッキーです。この場合、Javascriptsを実際に実行する前に、このデータをページに注入する必要があります。これらはPuppeteerのような開発環境で行うことができます。このトピックはおそらく別の記事に値するでしょう。

独自のテンプレートを作成する

テンプレートの例をロードせずに、上記の手順を実行します。すべての詳細をうまく記入し、慎重に手順を追加します。すべてのステップが順番に実行されることに注意してください。 プラグインは、現在のステップが完了するまで、次のステップの実行を許可しません。テンプレートはいつでも保存して、ワーカーのブラウザープラグインでテストできます。

価格設定

今回は、1000タスクあたり2ドルという価格にします。また、タスク実行中の1秒ごとに、タスク価格の1/60のコストがかかります。たとえば、タスクのコストは0.002ドルで、ワーカーは20秒かけて解決しています。
最終的なコストは$ 0.00266 = 0.002 +(0.002 / 60 * 20)になります。