(グーグルスプレッドシート)importxml関数でWEBページの情報を取得しよう(ウェブスクレイピング)
目次
importxml関数とは
グーグルスプレッドはWEBアプリだけあって、WEBの情報を取り扱うのに長けたExcelにはない関数がたくさんあります。その中の代表格がimportxml関数でしょう。
公式ページによればimportxml関数は、公式ページでは以下の説明となっています。
XML、HTML、CSV、TSV、RSS フィード、Atom XML フィードなど、さまざまな種類の構造化データからデータをインポートします。
これだけではよくわかりませんが、簡単にいうと
WEB上のデータの指定した1部分のデータをセルに表示する関数
と表現する事ができます。
実際の使い方
使い方は非常にシンプルです。
=IMPORTXML(URL, XPath)
=IMPORTXML(A1,"//title")
XPathとはWebページを構成するタグの事です。タイトルは例です。
Xpathの入手
XML に準拠した文書の特定の部分を指定する言語構文というのがXpathの定義です。
具体的に部分を示すとXpathが出てくるようにならないかなー。というのが次に出てくる感想なのですが、 Chromeであれば簡単にXpathを調べることができます。
Chromeにて取得したい場所を右クリックして”要素を検証”を選択。
するとブラウザ内にhtmlの記述の該当部分が現れるので、現れたら右クリックして"Copy xpath"を選択。
これでなんと簡単にxpathがコピーできてしまうのです。楽楽ぅぅ。
VBAでも要素を取得できるのですが、特定の場所という意味ではxPathを指定出来るスプレッドシートの方が取得が簡単ですので、こちらを選ぶのも選択肢の一つだと思います。