« 複数訪問予定地の天気予報(3時間と10日間を組合せ)表示 | Main

10/21/2017

Google スプレッドシートでスクレーピングのトライアル1

Googleスプレッドシートでは、Excelよりも簡単にWebスクレーピングが出来るらしいので、調べて、どのように実現出来るのかをテストしてみた。

Spread
   














①B3のセルに日本気象協会10日間天気予報のURL値を一つ書き込み、C7のセルからB3のアドレスを参照し、スクレーピングしてみた。
セル"C7"には、「 =IMPORTHTML(B3,"table",1) 」 と書き込めば、直ぐにデータをインポートし表示してくれる。(図の左側のデータ表示部分)ここで、
「 =IMPORTHTML(B3,"table",1) 」として表示してくれるのは、最初の5日分なので、残りの5日分(6日目から10日目まで)を表示させるには、最初の5日分の書き込みの邪魔にならない所のセル(表示させる左上隅になるセル)に「=IMPORTHTML(B3,"table",2) 」と記入し、日本気象協会10日間天気予報のURLの2番目に書かれているテーブルを読込み、ここに書き込む必要がある。

しかし、僕がExcelで行ったように、任意の数のURLデータが順番に並んでいるような場合には、そのURLが書かれたアドレスを参照・読込し、スクレーピングでデータをインポートして欲しい。

②B3のアドレス番号(3行目、2列目)を参照する方法は・・・、
セル"K7"にその方法を記載して試してみた。

セル"K7"には、「=IMPORTHTML(INDIRECT(ADDRESS(3,2)),"table",1) 」 と書き込めば、直ぐにデータをインポートし表示してくれた。(図の右側のデータ表示部分)

ADDRESS(3,2) の表記は、B3のアドレスを数値で参照する。
これだけでは、アドレスを指定するだけなので、INDIRECT関数を使って、そのアドレスに書かれたデータを表示させるようにしている。

結果は図のとおりである。

どちらの場合でも同じデータが表示された。

« 複数訪問予定地の天気予報(3時間と10日間を組合せ)表示 | Main

PC and PC troubles」カテゴリの記事

Comments

Post a comment

Comments are moderated, and will not appear on this weblog until the author has approved them.

(Not displayed with comment.)

TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/540128/65942876

Listed below are links to weblogs that reference Google スプレッドシートでスクレーピングのトライアル1:

« 複数訪問予定地の天気予報(3時間と10日間を組合せ)表示 | Main

November 2017
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

Recent Trackbacks

無料ブログはココログ