天気予報API

yahoo weather api

http://weather.yahooapis.com/forecastrss?p=ロケーションID

ロケーションIDを調べる
http://aspnetresources.com/tools/locid.aspx

★四国のロケーションIDがない。。。


google api
iGoogleの機能っぽい

http://www.google.com/ig/api?weather=都市名

http://www.google.com/ig/api?weather=osaka
http://www.google.com/ig/api?weather=大阪

簡単rexml

以下のよーなXMLがあって、

<root>
<li><a href="/Akita-Japan/JAXX0001/forecast.html">Akita</a></li>
<li><a href="/Akune-Japan/JAXX0002/forecast.html">Akune</a></li>
<li><a href="/Amagasaki-Japan/JAXX0003/forecast.html">Amagasaki</a></li>
<li><a href="/Aomori-Japan/JAXX0004/forecast.html">Aomori</a></li>
</root>

からテキストと属性を取り出したい場合、

#!/usr/bin/ruby
require "rexml/document"

doc = REXML::Document.new ARGF
i = 1

doc.elements.each("root/li/a"){|elm|
  locid = /(^\/.*\/)(JA.*)\/(forecast.html)/.match(elm.attributes['href'])[2]
  puts "#{i},#{locid},#{elm.text}"
  i = i + 1
}

結果

1,JAXX0001,Akita
2,JAXX0002,Akune
3,JAXX0003,Amagasaki
4,JAXX0004,Aomori
5,JAXX0005,Asahikawa