部屋の温度・湿度に続いてアメダスのデータも活用

先日導入した温度・湿度計のデータに加えて、気象庁のサイトからアメダスのデータを取得するスクリプトamedas.rbを作ってみました。
出力はそのままrrdtool updateに食わせる形式になってます。
グラフはまだデータが溜まってないので、またのちほど。
次回は温湿度系ウィジェット(Vista/Yahoo!/iGoogle?)あたりに挑戦してみる予定です。

#! /usr/local/bin/ruby -Ks
# amedas.rb

require 'rubygems'
require 'hpricot'
require 'open-uri'

AMEDAS_URL = 'http://www.jma.go.jp/jp/amedas_h/today-44132.html' # Tokyo

def get_current_data(url)
doc = Hpricot(open(url))
(doc/'table#tbl_list').each do |table|
hour = temperature = humidity = nil
(table/'tr').each do |tr|
tda = tr/'td'
if /^\d+\.\d+$/ =~ tda[1].inner_text
hour = tda[0].inner_text.to_i
temperature = tda[1].inner_text.to_f
humidity = tda[7].inner_text.to_i
end
end
if hour
return [hour, temperature, humidity]
end
end
if /today/ =~ url
return get_current_data(url.gsub('today','yesterday'))
end
return nil
end

d = get_current_data(AMEDAS_URL)
if d
puts "N:#{d[1]}:#{d[2]}"
end
広告

One Comment on “部屋の温度・湿度に続いてアメダスのデータも活用”

  1. グラフ

    “今日は巷で話題に挙がっているGoogle Chart APIを使ってみたいと思います。
    何のデータを使ってグラフを作ろうか迷ったのですが、
    毎日携帯に…


コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中