Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

IT技術 (Technology)

Webスクレイピングとは?実施する際の注意事項について

投稿日:2023年7月28日 更新日:

 

<目次>

(1) Webスクレイピングとは?実施する際の注意事項について
 (1-1) やりたいこと
 (1-2) 概要
 (1-3) スクレイピングをする上での注意事項
 (1-4) スクレイピングが禁止かどうか?を見分ける基準
 (1-5) Webスクレイピングを試してみる(手順紹介)

(1) Webスクレイピングとは?実施する際の注意事項について

(1-1) やりたいこと

・Webスクレイピングとは?を理解する
・Webスクレイピングの注意事項について理解する
・Webスクレイピングを手軽に試してみる

目次にもどる

(1-2) 概要

Webスクレイピング(削る)は「Webページからデータを自動で抽出する」仕組みのことです。
具体的には、WebページのHTMLやXMLコードを解析して、特定の情報を抽出するプログラムを使用して行われます。多数のWebページから情報を収集する必要がある場合や、大量のデータを手動で収集することが困難な場合に特に有用です。
 
ただし、Webスクレイピングは、Webサイトの所有者や管理者にとって、不正アクセスやプライバシー侵害といった問題を引き起こす可能性があるため、利用には注意が必要です。Webスクレイピングを行う前には、Webサイトの利用規約や法的規制に従い、適切な手順を踏むことが重要です。

(1-3) スクレイピングをする上での注意事項

●法律に触れるか?

・スクレイピングによる収集自体に違法性はない(公開されている範囲のデータを集める)
・注意すべきは「収集した情報の取り扱い方」
・しかし、規約によりスクレイピングを禁止しているWebサイトも多数ある
→Youtube、Amazon、Facebook、楽天、Twitter

(1-4) スクレイピングが禁止かどうか?を見分ける基準

●基準①:利用規約

・利用規約に明確に禁止する旨の記載があるか?
 
(図421)Amazonの例

●基準②:Web APIの有無

・Web APIがある場合は、基本的にWebAPI経由のアクセスに限定される

●基準③:robot.txtの有無

・robot.txtにはクローラーのアクセス可否を記載している。
・「User-agent」単位で「Allow」や「Disallow」のURLを記述している・
・よって、ここに記載されたルールに違反するURLはスクレイピングも禁止と考えられる。
・robot.txtは「http://[WebサイトのURL]/robots.txt」で確認が可能
 
以下はstack overflowの例(https://stackoverflow.com/robots.txt)です。
(図411)

(1-5) Webスクレイピングを試してみる(手順紹介)

今回はScrapeStormというツールを用いて、スクレイピングを試してみます。
 

●STEP1:ScrapeStormのダウンロード&インストール

(図111)
(図112①)
(図112②)

●STEP2:ScrapeStormの「タスク」を作成

 ・①スマートモード押下
(図121)
・②URL入力→「新規」
(図122)
・③事前データ収集が実行される
(図123)
・④タスク作成完了
(図124)

●STEP3:詳細ページの内容を取得

・①「詳細ページに行く」押下
(図131)
・②詳細ページが表示されたら「フィールドを追加」押下
(図132①)
・②「項目を選択」→「名称変更」を繰り返し、必要な項目を設定する。
(※場合により「列を複数選択」→「右クリック」→「選択を結合」で列を結合)
 
(動画133)

●STEP4:ScrapeStormの実行&結果取得

・①起動
(図141)
(図142)

Adsense審査用広告コード


Adsense審査用広告コード


-IT技術 (Technology)
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Slackで自動返信の投稿をするボットをPythonで作る手順(ngrokでローカルPCをサーバーに見立てて)

  <目次> (1) Slackで自動返信の投稿をするボットをPythonで作る手順(ngrokでローカルPCをサーバーに見立てて)  (1-1) STEP1:Slackアプリの新規作成&権 …

非機能要件とは?を極力分かりやすくご紹介

  <目次> (1) 非機能要件とは?を極力分かりやすくご紹介  (1-1) 機能要件とは?(Functional Requirement)  (1-2) 非機能要件とは?(Non-Func …

プロセスとは? Linuxの例も交えてご紹介

  <目次> (1) プロセスとは? Linuxの例も交えてご紹介  (1-1) プロセスとは?  (1-2) プロセスの構成要素  (1-3) プロセスの状態遷移 (1) プロセスとは? …

CORBA通信とは?概要やアーキテクチャについて

  <目次> (1) CORBA通信とは?概要やアーキテクチャについて  (1-1) CORBA通信とは?  (1-2) CORBAのアーキテクチャについて (1) CORBA通信とは?概要 …

Slackでコマンドを作る方法をご紹介(自作スラッシュコマンド)

  <目次> (1) Slackでコマンドを作る方法をご紹介(自作スラッシュコマンド)  (1-0) やりたいこと  (1-1) STEP1:Slackボットの開発(所要時間:60分)  ( …

  • English (United States)
  • 日本語
Top