見出し画像

【スクレイピング】Googleスプレッドシート『IMPORTXML関数』で手軽にデータ収集をする方法

今回はスクレイピングとして活用できるGoogleスプレッドシートの関数について解説します。自分の備忘録としての記録ですが、業務効率化や知識を深める一歩になれたら幸いです!



IMPORTXML関数とは

IMPORTXML関数は、ウェブサイトから欲しいデータを抜き出し、スプレッドシートに出力すことができる関数です。

構文

=IMPORTXML(URL, XPathクエリ)

データを取得してくるために必要な情報は2つ。

①URL

例えば、wikipediaの関数というページのh1要素のデータを取得するとしましょう。
この場合、取得してきたいデータがあるURLを記載します。

=IMPORTXML("https://ja.wikipedia.org/wiki/%E9%96%A2%E6%95%B0", XPathクエリ)


②XPathクエリ

XPathとは
XPath(XML Path Language)とは、XML形式の文書から、特定の部分を指定して抽出するための簡潔な構文(言語)です。HTML形式の文書にも対応します。
XPathのまとめ、要素の参照方法いろいろ │ Web備忘録

簡単に言うと、持ってきたい情報のうちどこの階層の情報を見たいのか、データの在り処を指定するためのものです。


実際にやってみよう!

では実際に関数を使ってみましょう。
XPathクエリの取得方法は、以下の4STEPで案外簡単にできちゃいます!


(1)URLを開く
今回は例として、wikipediaの『関数』というページを使用します。
https://ja.wikipedia.org/wiki/%E9%96%A2%E6%95%B0

(2)検証ツールを開く
Google Chromeの場合、右クリック→「検証(Mac)」を選択
※ショートカットキーであれば、F12キー

スクリーンショット 2022-09-18 22.42.43

ページ右側にHTMLやCSSなどが表示されます

スクリーンショット 2022-09-18 22.36.43

(3)XPathをコピー

検証ツールの左上部分に”四角に矢印”マークがついたアイコンがあるので、それをクリック
→ページの取得してきたい情報にカーソルを合わせる

スクリーンショット 2022-09-18 22.37.09

取得したい情報のHTMLの上で右クリックし、Copyを選択
→Copy XPath をクリックすれば取得完了!

スクリーンショット 2022-09-18 22.55.43

※今回のように、h1の配下のspan要素に取得したい文字列『関数』が含まれている場合は、span要素のXPathを取得する必要があります。

(4)関数に指定
あとは、関数に入力するだけ!

【注意点】
①URL、XPathクエリは””(ダブルクォーテーション)で囲むべし
②XPathの中に””(ダブルクォーテーション)がある場合は、’’(シングルクォーテーション)で囲むべし
※以下画像の赤下線部分

スクリーンショット 2022-09-18 22.40.26


まとめ

この方法はウェブサイト上のタイトルや見出し、日付、出展情報など、ページに記載されているあらゆる情報に利用できますので、ぜひ活用してみてください!


〈参考資料〉
・Web備忘録, "XPathのまとめ、要素の参照方法いろいろ, 2017.06.14, https://webbibouroku.com/Blog/Article/xpath, (アクセス日:2022年9月18日).
・wikipedia, "関数 - Wikipedia",  https://ja.wikipedia.org/wiki/%E9%96%A2%E6%95%B0, (アクセス日:2022年9月18日).

この記事が気に入ったらサポートをしてみませんか?