ウェブスクレイピング、ウェブハーベスティング、またはウェブデータ抽出は、ウェブサイトからデータを抽出するために使用するデータスクレイピングです。[ 1 ]ウェブスクレイピングソフトウェアは、ハイパーテキスト転送プロトコルまたはウェブブラウザを使用してワールドワイドウェブに直接アクセスできます。ウェブスクレイピングはソフトウェアユーザーが手動で行うこともできますが、この用語は通常、ボットまたはウェブクローラーを使用して実装された自動プロセスを指します。これは、特定のデータがウェブから収集され、通常は中央のローカルデータベースまたはスプレッドシートにコピーされ、後で取得または分析されるコピーの一種です。
ウェブページのスクレイピングとは、ページを取得してからそこからデータを抽出することです。ページの取得とは、ブラウザがユーザーがページを表示する際に行うダウンロードのことです。したがって、ウェブクローリングはウェブスクレイピングの主要な構成要素であり、後で処理するためにページを取得します。取得後、抽出を行うことができます。ページのコンテンツは解析、検索、再フォーマットされ、そのデータはスプレッドシートにコピーされたり、データベースにロードされたりします。ウェブスクレイパーは通常、ページから何かを取り出し、別の場所で別の目的で使用します。たとえば、名前と電話番号、会社名とそのURL、または電子メールアドレスを見つけてリストにコピーする(連絡先スクレイピング)ことが挙げられます。別の例としては、マーケティング目的で競合他社の製品価格を収集することが挙げられます。これには、eコマースWebサイトから大規模な価格データセットを収集し、トレンド分析、予測モデリング、競合ベンチマークなどのデータサイエンス技術を使用して分析することが含まれます。
コンタクトスクレイピングは、Webインデックス作成、Webマイニングおよびデータマイニング、オンライン価格変動監視および価格比較、製品レビュースクレイピング(競合他社を監視するため)、不動産リストの収集、気象データ監視、Webサイト変更検出、調査、オンラインプレゼンスおよび評判の追跡、Webマッシュアップ、Webデータ統合に使用されるアプリケーションのコンポーネントとして使用されるWebスクレイピングの一種です。
ウェブページはテキストベースのマークアップ言語(HTMLとXHTML)を使用して構築され、多くの場合、テキスト形式の豊富なデータを含んでいます。しかし、ほとんどのウェブページは人間のエンドユーザー向けに設計されており、自動化された利用の容易さを考慮していません。そのため、ウェブページのスクレイピングを容易にするための専用ツールやソフトウェアが開発されてきました。ウェブスクレイピングの用途には、市場調査、価格比較、コンテンツ監視、人工知能などがあります。企業は、これらのデータを効率的に収集・活用するために、ウェブスクレイピングサービスを利用しています。
ウェブサイトによっては、ボットによるページ閲覧を検知して禁止するなど、ウェブスクレイピングを防止するための対策を講じているところもあります。これに対し、ウェブスクレイピングシステムは、DOM解析、コンピュータビジョン、自然言語処理などの技術を用いて、人間のようなブラウジングをシミュレートし、オフライン解析のためにウェブページコンテンツを収集します。
1989年にワールドワイドウェブが誕生した後、最初のウェブロボット[ 2 ]ワールドワイドウェブワンダラーが1993年6月に作成されました。これはウェブのサイズを測定することのみを目的としていました。
1993年12月、初のクローラー型ウェブ検索エンジンであるJumpStationがリリースされました。当時はウェブ上のウェブサイトの数が少なかったため、検索エンジンはリンクの収集とフォーマットを人間の管理者に頼っていました。それに対し、JumpStationはウェブロボットを利用した初のWWW検索エンジンでした。
2000年に最初のWeb APIとAPIクローラーが作成されました。2000年にはSalesforceとeBayが独自のAPIを公開し、プログラマーはそれを使って一般公開されているデータの一部にアクセスしてダウンロードできるようになりました。[ 3 ]それ以来、多くのWebサイトが、人々が公開データベースにアクセスできるようにWeb APIを提供しています。
データ抽出技術は、手動収集から高度な自動システムまで多岐にわたります。高度な手法では、ウェブページの基盤となる構造を分析し、非構造化コンテンツを機械可読形式に変換します。これらの技術は、テキスト処理や人工知能を活用し、セマンティックウェブの技術目標に沿ったものです。
ウェブスクレイピングの最もシンプルな方法は、ウェブページからデータをテキストファイルやスプレッドシートに手動でコピー&ペーストすることです。この方法は技術的なツールを必要とせず、ウェブサイトの制限によって自動スクレイピングができない場合や、複雑なコンテンツを解釈するために人間の判断が必要な場合に使用できます。しかし、手動スクレイピングは時間がかかり、人為的なミスが発生しやすく、精神的に疲れるため、大規模なデータセットでは非常に非効率的です。そのため、自動化が不可能な場合を除き、一般的に自動化された方法に比べて実用的ではないと考えられています。
ウェブページから情報を抽出する簡単な方法は、UNIXのgrepコマンド、またはプログラミング言語(例えばPerlやPython )の正規表現マッチング機能を使用して、指定されたパターンに一致するテキストを見つけることです。
静的および動的なウェブページは、ソケットプログラミングを使用してリモートウェブサーバーにHTTPリクエストを送信することで取得できます。
多くの Web サイトには、データベースなどの基盤となる構造化されたソースから動的に生成されるページの大規模なコレクションがあります。同じカテゴリのデータは通常、共通のスクリプトまたはテンプレートによって類似のページにエンコードされます。データ マイニングでは、特定の情報ソースでそのようなテンプレートを検出し、そのコンテンツを抽出し、それを関係形式に変換するプログラムをラッパーと呼びます。ラッパー生成アルゴリズムは、ラッパー誘導システムの入力ページが共通のテンプレートに準拠し、URL 共通スキームによって容易に識別できることを前提としています。[ 4 ]さらに、XQueryや HTQLなどの半構造化データクエリ言語を使用して、HTML ページを解析し、ページ コンテンツを取得および変換することができます。
SeleniumやPlaywrightなどのプログラムを使用することで、開発者はChromeやFirefoxといったWebブラウザを制御し、Webサイトからデータを読み込み、ナビゲートし、取得することができます。Webブラウザは各ページを完全に読み込むため、この方法は動的なサイトからデータをスクレイピングする場合に特に有効です。ページ全体が読み込まれると、開発者はXPathなどの式言語を使用してDOMにアクセスし、解析することができます。
特定の業種に特化したコンテンツ収集プラットフォームを開発している企業は複数存在する。これらのプラットフォームは、特定の業種向けに多数の「ボット」を作成・監視するが、人間の介入は一切不要であり、特定のターゲットサイトに関する作業も不要である。準備段階では、まず業種全体の知識ベースを構築し、その後プラットフォームが自動的にボットを作成する。プラットフォームの堅牢性は、取得する情報の質(通常はフィールド数)と拡張性(数百または数千のサイトにどれだけ迅速に拡張できるか)によって評価される。この拡張性は、一般的なアグリゲーターではコンテンツの収集が複雑すぎたり、労力がかかりすぎたりするロングテールサイトをターゲットにする場合に特に有効である。
スクレイピング対象のページには、メタデータや意味論的なマークアップ、注釈が含まれている場合があり、これらを使用して特定のデータスニペットを特定できます。注釈がMicroformatのようにページに埋め込まれている場合、この手法は DOM 解析の特殊なケースと見なすことができます。別のケースでは、注釈は意味論的レイヤー[ 5 ]に整理され、 Web ページとは別に保存および管理されるため、スクレイパーはページをスクレイピングする前にこのレイヤーからデータスキーマと指示を取得できます。
機械学習やコンピュータビジョンを用いた取り組みでは、人間がページを視覚的に解釈するように、ウェブページから情報を識別・抽出しようとしている。[ 6 ]
ウェブスクレイピングの合法性は世界中で異なります。一般的に、ウェブスクレイピングは一部のウェブサイトの利用規約に違反する可能性がありますが、これらの規約の強制力は不明確です。[ 7 ]
米国では、ウェブサイトの所有者は、望ましくないウェブスクレイピングを防ぐために、主に次の 3 つの法的主張を使用できます。(1) 著作権侵害 (編集)、(2)コンピュータ詐欺および濫用法(CFAA) 違反、(3)動産の不法侵入。[ 8 ]ただし、これらの主張の有効性はさまざまな基準を満たすかどうかに依存し、判例法はまだ発展途上です。たとえば、著作権に関しては、元の表現の完全な複製は多くの場合違法ですが、米国では、Feist Publications v. Rural Telephone Service 事件で、事実の複製は許容されると裁判所が判決を下しました。
米国の裁判所は、「スクレイパー」または「ロボット」の利用者が動産侵害の責任を問われる可能性があることを認めている[ 9 ] [ 10 ] 。これは、スクレイパーの利用者が侵害しているコンピュータ システム自体が個人所有物とみなされることを意味する。これらの事例の中で最もよく知られているのは、eBay v. Bidder's Edgeで、Bidder's Edge が eBay Web サイトからのオークションへのアクセス、収集、インデックス作成を停止するよう命じる差止命令が出された。この事例は、オークション スナイピングとして知られる自動入札に関するものであった。しかし、動産侵害の主張で勝訴するためには、原告は、被告が故意に、かつ無許可で、コンピュータ システムに対する原告の占有権を侵害し、被告の無許可の使用が原告に損害を与えたことを証明しなければならない。裁判所に持ち込まれたすべてのウェブ スパイダーリングの事例が動産侵害とみなされたわけではない[ 11 ] 。
スクリーン・スクレイピングの最初の主要なテストの 1 つは、アメリカン航空(AA) と FareChase という会社が関わっていました。 [ 12 ] AA はテキサス州の裁判所から、FareChase が、ソフトウェアが AA の Web サイトも検索する場合に、ユーザーがオンライン運賃を比較できるソフトウェアを販売することを差し止める差止命令を獲得しました。航空会社は、FareChase の Web 検索ソフトウェアが、公開されているデータを収集する際に AA のサーバーに不法侵入したと主張しました。FareChase は 2003 年 3 月に控訴しました。6 月までに、FareChase と AA は和解に合意し、控訴は取り下げられました。[ 13 ]
サウスウエスト航空もスクリーン・スクレイピング行為に異議を唱え、FareChaseと別の企業であるOuttaskを訴訟に巻き込んだ。サウスウエスト航空は、スクリーン・スクレイピングは「コンピュータ詐欺および濫用」の一例であり、サウスウエスト航空のサイトへの「損害および損失」と「不正アクセス」につながったため違法であると主張した。また、「業務関係の妨害」、「不法侵入」、「コンピュータによる有害なアクセス」にも該当するとした。さらに、スクリーン・スクレイピングは法律上「不正流用および不当利得」に該当し、ウェブサイトの利用規約違反にも当たると主張した。Outtaskはこれらの主張をすべて否定し、この件に適用される法律は米国著作権法であり、著作権法の下ではスクレイピングされた情報は著作権保護の対象とならないと主張した。これらの訴訟は米国最高裁判所で解決されることはなかったが、FareChaseは最終的に親会社であるYahoo!によって閉鎖された。 、Outtaskは旅行経費管理会社のConcurに買収されました。[ 14 ] 2012年、3Tapsというスタートアップ企業がCraigslistから住宅広告をスクレイピングしました。Craigslistは3Tapsに停止命令書を送り、IPアドレスをブロックし、後にCraigslist対3Taps訴訟を起こしました。裁判所は、停止命令書とIPブロックは、Craigslistが3Tapsがコンピュータ詐欺および濫用法(CFAA)に違反したと正当に主張するのに十分であると判断しました。
これらはスクレイピングに関する初期の判決であり、責任理論は統一されていませんが、裁判所が商業サイト上の専有コンテンツを、サイト所有者にとって望ましくない使用から保護する用意があるという傾向が浮かび上がってきていることを無視することは困難です。ただし、そのようなコンテンツの保護の程度は確定しておらず、スクレイパーによるアクセスの種類、アクセスおよびコピーされた情報の量、アクセスがサイト所有者のシステムに悪影響を与える程度、およびそのような行為の禁止の種類と方法によって異なります。[ 15 ]
この分野の法律はより確立されつつありますが、公開ウェブサイトにアクセスするためにスクレイピング プログラムの使用を検討している組織は、利用規約やサイトに掲載または提供されているその他の規約や通知を確認することで、そのような行為が許可されているかどうかも検討する必要があります。Cvent Inc. v. Eventbrite Inc. (2010) では、米国バージニア州東部地区の地方裁判所が、ブラウズラップ契約またはライセンスを強制執行するためには、利用規約をユーザーの注意に知らせる必要があると判決を下しました。[16 ] 2014年に米国ペンシルベニア州東部地区の地方裁判所に提起された訴訟では、[ 17 ] e コマース サイトのQVC が、Pinterest のようなショッピング アグリゲーターである Resultly が QVC のサイトからリアルタイムの価格データをスクレイピングすることに異議を唱えました。 QVCは、ResultlyがQVCの小売サイトを「過剰にクロール」し(QVCのウェブサイトに毎分200~300件、時には毎分36,000件もの検索リクエストを送信したとされる)、その結果QVCのサイトが2日間クラッシュし、QVCの売上損失につながったと主張している。[ 18 ] QVCの訴状では、被告がウェブクローラーを偽装して送信元IPアドレスを隠蔽し、QVCが問題を迅速に修復することを妨げたと主張している。これは、QVCがResultlyによって引き起こされたと主張するウェブサイトの利用不能に対する損害賠償を求めているため、特に興味深いスクレイピング事件である。
この裁判期間中、原告のウェブサイトでは、利用規約へのリンクが、インターネット上のほとんどのサイトと同様に、ページの最下部にあるサイトのすべてのリンクの中に表示されていました。この判決は、後述するアイルランドの判決と矛盾しています。裁判所はまた、バージニア州が統一コンピュータ情報取引法(UCITA)を採用したことを考慮すると、ブラウズラップ制限は強制力があるという原告の主張を却下しました。UCITAは、多くの人が一般的なブラウズラップ契約慣行に有利であると信じていた統一法です。[ 19 ]
Facebook, Inc. v. Power Ventures, Inc.では、2012 年に地方裁判所が Power Ventures は Facebook ユーザーに代わって Facebook ページをスクレイピングすることはできないとの判決を下しました。この訴訟は控訴審で、電子フロンティア財団は2015 年に判決の覆しを求める意見書を提出しました。[ 20 ] [ 21 ] Associated Press v. Meltwater US Holdings, Inc.では、米国の裁判所が Meltwater が Associated Press からニュース情報をスクレイピングして再公開したとして責任があると判断しましたが、英国の裁判所は Meltwater に有利な判決を下しました。
第9巡回区控訴裁判所は2019年、 hiQ Labs対LinkedIn事件において、ウェブスクレイピングはCFAAに違反しないとの判決を下した。この事件は米国最高裁判所に上訴され、最高裁は2021年のVan Buren対米国事件における最高裁の判決(CFAAの適用範囲を狭めた)を踏まえ、事件を再検討するために第9巡回区控訴裁判所に差し戻した。 [ 22 ]この再検討において、第9巡回区控訴裁判所は以前の判決を支持した。[ 23 ]
インターネットアーカイブは、著作権法に違反するとみなされることなく、多数の公開されているウェブページを収集・配布している。
2006年2月、デンマーク海事商業裁判所(コペンハーゲン)は、ポータルサイトofir.dkによる不動産サイトHome.dkの体系的なクローリング、インデックス作成、およびディープリンクは、デンマーク法または欧州連合のデータベース指令に抵触しないとの判決を下した。[ 24 ]
倫理的なデータスクレイピングはビジネスにおけるオフマーケット調達をサポートするが、自動データ収集におけるプライバシー侵害を避けるためにGDPRを遵守する必要がある。[ 25 ]
2010年2月に管轄権の問題で複雑化した事件で、アイルランド高等裁判所は、発展途上の判例法の未熟な状態を示す判決を下した。Ryanair Ltd v Billigfluege.de GmbH事件において、アイルランド高等裁判所は、Ryanairの「クリックラップ」契約は法的拘束力を持つと判断した。米国バージニア州東部地区連邦地方裁判所およびデンマーク海事商事裁判所の判断とは対照的に、マイケル・ハンナ判事は、Ryanairの利用規約へのハイパーリンクは明白に見え、オンラインサービスへのアクセスを得るために利用規約に同意する義務をユーザーに課すことは、契約関係を構成するのに十分であると判断した。[ 26 ]この判決はアイルランド最高裁判所に上訴中である。[ 27 ]
2020年4月30日、フランスデータ保護機関(CNIL)はウェブスクレイピングに関する新しいガイドラインを発表しました。[ 28 ] CNILのガイドラインでは、公開されているデータは依然として個人データであり、そのデータの所有者の許可なく再利用することはできないことが明確にされています。[ 29 ]
オーストラリアでは、2003年のスパム法によって一部のウェブ収集行為が違法とされているが、これは電子メールアドレスにのみ適用される。[ 30 ] [ 31 ]
知的財産権侵害に関するいくつかの事例を除き、インドの裁判所はウェブスクレイピングの合法性について明確な判決を下していません。しかし、インドでは一般的な電子契約はすべて有効であるため、データスクレイピングを禁止する利用規約に違反することは契約法違反となります。また、コンピュータ資源への不正アクセスやコンピュータ資源からのデータ抽出を罰する2000年情報技術法にも違反します。
ウェブサイトの管理者は、ボットを停止または減速させるためにさまざまな対策を講じることができます。いくつかの手法としては、以下のようなものがあります。
{{cite journal}}: CS1 maint: 複数の名前: 著者リスト (リンク)