サイトをスクレイピングから保護しないでください。抵抗は役に立たない

過去10年間、コンテンツの集約と分析に関連する多くのプロジェクトを実施してきました。 多くの場合、集約には、サードパーティのサイトからのデータの削除、つまりスクレイピングが含まれます。 私はこの用語を避けようとしますが。 彼は一種のレーベルに変わり、それは多くの誤解に関連しています。 主な誤解は、X、Y、Zを使用してWebスクレイピングをブロックできるということです。

tl; 博士; 不可能です。

ビジネスの観点から


先週、 GO2CINEMAビジネスを展開している業界のシニアリーダーに会いました。 間違いなく、これは映画業界で最も知的で知識のある人の一人です。

GO2CINEMAビジネスモデルは、セッションのスケジュール、利用可能な座席、チケットのコストに関する情報をさまざまなソースから収集し、ユーザーに代わってこれらのWebサイトでチケットを購入するリクエストを実行することに基づいています。

私はこの人に投資を見つけることについて相談しました。 彼は助けを提供し、コンテンツのスクレイピングを含む、現在のビジネスをブロックするためのあらゆる方法の分析を準備するように依頼しました(技術的および法的観点から)。 会議の前に必要な書類を準備し、彼と共有しました。 彼の反応は次のようなものでした。

はい、徹底的な調査。 しかし、まだあなたをブロックする方法があります。 *にやにや*

いいえ、そのような方法はありません。

実際のユーザーはボットと違いはありません


ITから遠く離れた人々は、80年代のコンピューターゲームのようなプログラミングの理想化されたアイデアを持っています。仮想現実のヘルメットをかぶってWebに飛び込むのです。 実際、すべての情報とすべての相互作用はゼロと1です。 ここには人間はいません。 コンピューターまたは人が入力したデータに違いはありません。


Webトラフィック検査

簡単に言います。 訪問者がサイトのコンテンツにアクセスできる限り、ボットは同じアクセスを取得できます。 スクレイピングに対するすべての技術的ソリューションは、ボットと同程度に実際のユーザーを妨げます。

信じられない場合は、私のビジネスを例として、Webサイトがボットをブロックしようとするすべての技術的な方法を見てみましょう。

技術的対策


これらの点のいくつかは技術者には馬鹿げているように見えますが、投資家は本当にこれらすべての懸念を表明しました。 だから我慢してください。

ユーザーエージェントロック


各HTTP要求には、 ユーザーエージェント( HTTPクライアントの識別子)を含むHTTPヘッダーが含まれます。 したがって、映画館はHTTPヘッダーからの情報を使用してボットを識別し、それらをブロックできます。

解決策:実際のユーザーをシミュレートする偽のHTTPヘッダー。

例:GO2CINEMAボットは、実際のユーザーセッションを模倣するHTTPヘッダーを使用します(たとえば、Google Chromeブラウザーで)。 HTTPヘッダーは、スクレイピングセッション間でランダム化されます。

結論:HTTPヘッダーなど、クライアントから送信されたHTTPメタデータを使用して、実際のユーザーをブロックせずにGO2CINEMAボットをブロックすることは不可能です。

IPブロッキング


映画館は、GO2CINEMAボットのIPアドレスを特定してブロックしようとする場合があります。

解決策:「偽の」IPアドレス(プロキシを使用)。


質量識別

例:

GO2CINEMAは、要求のスケジューリングとIPローテーションの組み合わせを使用して、識別可能なボットの動作パターンを回避します。 予防措置のいくつかを次に示します。

  1. IPアドレスのランダム化
  2. 映画館に可能な限り地理的に近いIPアドレスを強調表示します。
  3. スクレイピングセッション専用のIPアドレスを保存します。
  4. プロキシプールは24時間ごとに変更されます。

現在のインストールには1つの欠点があります。IPアドレス(プロキシ)は、実際の人々が行うように、自宅のアドレスではなく、さまざまなデータセンターに登録されることに注意してください。 理論的には、映画館はすべての英国のデータセンターのサブネットのリストを取得し、それらをブロックできます。 これにより、現在の設定でボットが正常にブロックされます。 ただし:

  1. 費用がかかります。 たとえば、このようなサービスは、MaxMind(匿名化、プロキシ、VPNのIPアドレスを含むデータベース 、価格は公開されていません)およびブロック(年間12,000ドル)によって提供されます。
  2. これにより、実際のユーザーがブロックされる可能性があります。

Netflixは、既知のVPNおよびプロキシのIPアドレスをブロックするプロバイダーの例です。

映画館がデータセンターのIPアドレスのブロックを開始した場合、 Luminatiなどのホームアドレスのプロキシを通じてホームユーザーのIPを使用する必要があります。 このアプローチには2つの欠点があります。

  1. コスト(現在のトラフィックは月額£1,000です)。
  2. 信頼性 ホームアドレスプロキシのパフォーマンスと速度を予測することは困難です。

一部の映画館は、ボットのIPアドレスをブロックしようとしています。 ある情報源は、Cinema XがIPアドレスを正常にブロックしたと考えている(または少なくとも考えている)と語っています。 しかし、これはそうではありません。 GO2CINEMAボットのアクティビティは停止しませんでした。 Cinema Xは、同じデータを収集していた誰かをブロックしたようです。

理論的には、サーフィンパターンによってHTTP要求を人やボットから区別することが可能であることを強調することが重要です(「非表示のキャプチャ」セクションを参照)。 ただし、GO2CINEMAボットからのHTTPリクエストを判別することは非常に困難です(「ユーザーエージェントのブロック」セクションで示されている理由のため)。

結論:IPアドレスのブラックリストによってGO2CINEMAボットをブロックすることは非常に困難です。1)ボットを特定することは非常に困難であり、2)データセンターおよびホームユーザーの多数のIPアドレスにアクセスできるからです。

IPによるブロックは、ボットが映画館のサイトをクロールし続けることを妨げません。

キャプチャを使用する


Cinemaはcaptchaを追加して、サイトの特定のセクションへのアクセスを制限したり(視聴者の占有場所の表示など)、特定のアクションを制限したりできます(支払いトランザクションの完了など)。

解決策:キャプチャを解決するためのAPI。


チューリングの完全に自動化されたコンピューター人間識別のための公開テスト(CAPTCHA)

CAPTCHAは通常のユーザーにのみ不便を与えます。 すべてのキャプチャメソッド(GoogleのreCAPTCHAを含む)は、 2Captchaなどのサードパーティサービスの助けを借りて簡単にバイパスされます。 これらのサービスでは、実際の人がボットに割り当てられたタスクを解決します。 サービスのコストは最小限です(たとえば、1000タスクで2ポンド)。

結論:キャプチャを追加しても、ボットが映画館にとどまるのを防ぐことはできません。

目に見えないCAPTCHA


映画館では、動作に基づいてボットを識別およびブロックするメカニズム(いわゆる「インビジブルキャプチャ」)を使用できます。

Invisible captchaは、さまざまな変数の組み合わせを使用して、特定のクライアントのインタラクションが自動化される可能性を評価します。 これを実装する方法についての単一のレシピはありません。 異なるプロバイダーは、異なるパラメーターを使用してユーザーをプロファイルします。 このサービスは、一部のCDN(Cloudflareなど)およびGoogle reCAPTCHAなどの従来のキャプチャプロバイダーによって提供されます。

Googleのクリック詐欺認識部門の元責任者であるSchumann Gozemajumder氏によると、この機会は「非常に高度なボットでも回避できる新しいタイプの問題を生み出しますが、実際の人間にとってはそれほど複雑ではありません」。

結論:行動プロファイルによる識別は、ボットが映画館にとどまることを妨げません。これは、回避する必要があるもう1つの問題です。

メール確認


, , .

: «».


, — Kidmograph

:

. GO2CINEMA go2cinema.mail . (, john1@go2cinema.mail). , , GO2CINEMA.

:

  1. .
  2. .

, .

go2cinema.mail, - :

  1. .
  2. , (, Mailinator).
  3. (Yahoo, Gmail . .).
  4. .

: .


.

: .

(, , ), (, Twillio) .

, (, 1 ).

, , :

  1. SMS .
  2. , .
  3. ( , ).

, .

: .

BIN


(BIN).

: (, Barclays).

:

GO2CINEMA . MasterCard Entropay. Entropay , . . BIN 522093. , BIN.

BIN . . MasterCard 5.10.1:

5.10.1
- , . , .

MoviePass :

« MasterCard, AMC , MasterCard. , MasterCard». —

, . - , , .

: BIN .


.

, . . .

, -, :


: .

API API


( ) , GO2CINEMA, API API.

: API, API.
: API?
: API .
: ?
: .
: API .

, , API .

: API API , API.


. .

, , 1)  2) .

98%


, , .

? :


, .


. ?

: ( , ).

, .


, , (. Reddit). .

X IP- ( « IP-»), , - .  — «, », .

, - Excel . API — , -.

, , API. .

Source: https://habr.com/ru/post/J353348/


All Articles