logo
languageJPdown
menu

GoogleスプレッドシートでWebデータをスクレイピングする

約6分で読めます

Webサイト上のデータを表やリストにまとめる際に、手作業でコピー&ペーストをしていませんか。こうした手作業はデータ量が少ないときには最も手軽な方法かもしれません。しかし、データ量が多ければ多いほど、時間と手間が掛かるため非常に面倒な作業になります。

もしプログラミングの知識・技術があれば、Pythonなどを使ったWebスクレイピングで自動抽出できます。しかしプログラミングの知識がない方は、Web上のデータを効率的に取得するには、どうすればよいのでしょうか。

そこで本記事では、誰でも簡単に使えるWebデータの取得方法を2つ紹介します。

  • Googleスプレッドシートでデータ入力を自動化する方法
  • ノーコードツールでデータをスクレイピングする方

それぞれの手順をわかりやすく解説するので、早速試してみましょう!

Webスクレイピングとは

Webスクレイピングとは、Webサイトから特定の情報を自動的に抽出するコンピュータソフトウェア技術のことです。Webスクレイピングを使えば、インターネット上の特定のWebサイトやデータベースを探り、大量のデータの中から任意のデータだけを自動で抽出できます。

Webスクレイピングを行うためには、PythonやRubyなどのプログラミングによって、スクレイパーの作成が必要です。しかし、未経験からプログラミングを習得するのは容易ではありません。そこで役立つのが、スプレッドシートの関数や、Webスクレイピングツールの活用です。

Googleスプレッドシートとは

Googleスプレッドシートは、Googleが提供するクラウドベースの表計算ツールです。このツールは、Microsoft Excelと同様の多くの機能を提供していますが、主な違いはそのクラウドベースの性質にあります。ここでは、Googleスプレッドシートの主要な特徴と機能をいくつか紹介します。

クラウドベースGoogleスプレッドシートはインターネット接続があればどこからでもアクセスでき、インストールする必要がありません。これにより、デバイス間での互換性とアクセスの容易さが保証されます。
共有とコラボレーションスプレッドシートは簡単に共有でき、複数のユーザーが同時にドキュメントを編集できます。編集者ごとに異なる色で変更箇所が表示され、リアルタイムでのコラボレーションが可能です。
自動保存とバージョン履歴編集内容は自動的に保存され、以前のバージョンに簡単に戻すことができます。これにより、誤ってデータを失うリスクが軽減されます。
統合されたGoogleサービスGoogleスプレッドシートはGoogleドライブに保存され、GoogleフォームやGoogleドキュメントなど他のGoogleアプリケーションと簡単に統合できます。
拡張性とカスタマイズ様々なアドオンやスクリプトを使用して、機能を拡張したりカスタマイズすることが可能です。
フォーマットと関数Excelと同様に、さまざまなフォーマットオプション、数式、関数が用意されており、複雑なデータ分析と計算が可能です。

IMPORTXML関数とは

IMPORTXML 関数は、Googleスプレッドシートで使用される機能で、XMLやHTMLなどのウェブページから特定のデータをインポートするために使われます。この関数は =IMPORTXML(URL, “XPathクエリ”) の形式で記述され、URLはデータを抽出したいウェブページのアドレス、XPathクエリはそのページ内で特定のデータを指定するためのパスです。

この機能は、ウェブからのデータ抽出や簡易的なウェブスクレイピングに便利で、多様なデータソースに対応しています。ただし、取り込むデータ量やセキュリティの観点から注意が必要です。

XPathとは何か

XPath(XML Path Language)は、XML文書内の特定の部分や情報を検索・選択するための言語です。XML文書の構造を利用して、特定の要素、属性、テキストなどを簡単に特定し、抽出することができます。XPathの表現は、ディレクトリ構造に似たパスの形式で、文書の階層をナビゲートすることで特定のデータにアクセスします。

この言語は、XML文書を操作するための他の技術(例えばXSLTやXQuery)と組み合わせて使用されることが多く、ウェブページから特定の情報を抽出するウェブスクレイピングなどにも利用されます。XPathは、その精確さと柔軟性から、XMLベースのデータを扱う際に広く使用されています。

Googleスプレッドシートでデータ入力を自動化する方法

ここでは、Googleスプレッドシートの「IMPORTXML関数」を活用した、簡単なWebクローラーを構築する手順を紹介します。データの取得先として、データ収集サイト「Octoparseブログ」を利用します。

ステップ1:新しいGoogleスプレッドシートを開きます。

ステップ2:Chromeブラウザで「Octoparseブログ」を開き、ページを右クリックして、メニューの中から「検証」を選択します。

するとソースコードが表示されるので、「矢印アイコン」(画面左下の赤枠)をクリックし、セレクタを有効にします。  

セレクタを有効にした状態で、必要な箇所にカーソルを置くと(①)、対応する情報が「検証パネル」に表示されます(②)。ここでは「タイトル」を選択します。

ステップ3:OctoparseブログのURLをスプレッドシートに貼り付けます。ここではA2セルを指定します。

ステップ4:Xpathを取得する

今回は「IMPORTXML関数」を使って、ブログデータを自動で取得します。IMPORTXML関数とは、Webサイトから必要な情報を指定し、その情報をスプレッドシートに自動で出力できる関数のことです。

まず、要素となるXpathをコピーします。Xpathとは、マークアップ言語XMLに準拠した文書から特定の部分を指定する言語のことです。Xpathについて詳しく知りたい方は、以下の記事もご覧ください。

参考:Webスクレイピングに不可欠!Xpathのまとめ

Xpathを取得するには、「タイトル> Copy > Copy XPath」の順にクリックします。

スプレッドシートなどに貼付けてもらえば、「//*[@id=”trendinggames”]/tbody/tr[1]/td[4]」というXpathが取得できていることがわかります。

コピーしたXPathを、先程のスプレッドシート内(A3セル)に貼り付けます。

IMPORTXML関数の構文は以下の通りです。

=IMPORTXML(URL, XPathクエリ)

したがって、A4に「=IMPORTXML(A2,A3)」と入力します。図のようにタイトルが表示されれば、成功です。

ノーコードツールでデータをスクレイピングする

次にWebスクレイピングツールのOctoparseを使って、同じ作業をどのように達成できるかを見てみましょう。

ステップ1:Octoparseでスクレイピングするサイトを開く

Octoparseを起動します。スクレイピングしたいWebページのURLを入力します。URLが検出されたら「抽出開始」 ボタンをクリックします。

ステップ2: Webページを識別する

画面が切り替わったら、操作ヒントのパネルから「Webページを自動識別する」をクリックします。すると、Webページの自動識別が始まるので、しばらく待ちましょう。

 自動識別とは、自動的にページ上の必要なデータを検出して識別するという役立つ機能です。ポイント&クリックをする必要はなく、Octoparseは自動的に処理します。

ステップ3:ワークフローを生成する

Webページの識別が完了すると、データプレビューで識別したデータが表示され、どのようなデータが取得されているか確認ができます。

抽出するデータに問題がなければ、「ワークフローを生成」のボタンをクリックして確認し、スクレイピングタスクを作成します。

ステップ4:タスクを実行する

ワークフローを確認して問題がなければ「実行」ボタンをクリックして、スクレイピングタスクを実行します。

次にタスク実行方法の選択画面が表示されるので、「ローカル抽出」または「クラウド抽出」のどちらかを選択します。クラウド抽出は有料版のみ利用可能です。

いずれかを選択すると、スクレイピング実行中の画面が表示されますので、完了するまでしばらく待ちましょう。

取得したデータは、xls、csvなどにエクスポートが可能です。Excelなどを使えば、抽出後のデータ加工も簡単にできます。

まとめ

今回は、WebページのデータをGoogleスプレッドシートで取得する方法と、Webスクレイピングで取得する方法をそれぞれ紹介しました。どちらの方法もPythonなどのプログラミングを使わずにかんたんにデータを取得できます。

ただし、近年ではWebページをスクレイピングできないように規制されていることも多く、IMPORTXML関数を使ったスクレイピングではデータを取得できない場合もあります。

その場合は、Webスクレイピングツールを使えば、Webスクレイピングを実行することができます。OctoparseではWebサイト側にスクレイピング と気づかれない機能が充実しています。

参考:スクレイピングテクニック – バレないようにする方法を解説

他にもスクレイピング未経験者がOctoparseを使うメリットはたくさんあります。

  • 無料で使えるFreeプランを提供している
  • ノーコード技術を使うためプログラミングの知識取得が不要
  • 人気Webページのテンプレートが豊富ですぐに利用できる

https://www.octoparse.jp/template/google-search-scraper

https://www.octoparse.jp/template/google-maps-store-listing-scraper

興味がある方はぜひ使ってみてください。

クリックだけでウェブ データを取得
無料ダウンロード

人気記事

トピックを検索する

今すぐOctoparseを始めて、業務効率化を実現しましょう。

ダウンロード

関連記事

  • avatarTakahashi
    本記事では、世界が最も注目する最先端技術トレンドを紹介します。時代に取り残されないためにも、ぜひ参考にしていただければ幸いです。
    2024-10-21T17:56:31+00:00 · 6 min read
  • avatarTakahashi
    購買の判断基準の中で、最も大きなファクターなのが「価格」です。そのため、出品者側にとって価格設定は重要であり、名経営者の稲盛和夫氏も「値決めは経営である」という言葉を残しています。そして、適切な価格設定のために重要なのが「価格調査」です。しかし、オンラインサイトで競合製品の値段を1つずつ確認するのは非効率でしょう。そこでおすすめなのが、価格調査ツールです。本記事では、価格調査の基本から価格調査ツール10選を紹介します。
    2024-01-09T15:31:48+00:00 · 6 min read
  • avatarTakahashi
    「データ入力を自動化して面倒な入力作業から解放されたい」このように感じた経験はありませんか?紙文書からパソコンへの転記、データの打ち込み、Webサイトからのコピペなど、単調な作業を繰り返すことに苦手意識を持つ方も多いでしょう。本記事では、かんたんな操作・設定をするだけで、入力作業をプログラムによる自動化を実現できるデータ自動入力ツールをシーン別に紹介します。時間のにお悩みをお持ちの方はぜひご覧ください。
    2024-01-02T14:22:32+00:00 · 5 min read
  • avatarAKI
    情報がデータ化されている現代において、収集したデータを活用することは必要不可欠といっても過言ではありません。しかし、データを活用することの重要性を理解しているものの、肝心のデータが社内や手元に存在せず、データ収集に悩んでいる方もいることでしょう。また、データが不足していることを自覚していても「データをどこから集めるのか」「購入しなければならないのか」という疑問も感じてるのではないでしょうか。ここでは、データ収集の必要性から実施方法、コストを下げる方法を紹介します。
    2023-02-14T00:00:00+00:00 · 7 min read