July 3rd, 2009
Dneska jsem byl ráno zaskočenej další výlukou z výluky. Luxusní epizodka, včetně babičky bušící holí do kabinky řidiče. Opravdu k popukání, zvlášť když zrovna někam člověk spěchá. Richard Bukovansky mě na Twitteru pošťuchoval, ať si výluky nechám posílat cronem SMSkou na mobil. Tak jsem mu teda uvařil kaši, aby měl kolem čeho chodit
Upozorňuju, že jde o klasickej reverzní beerware - tedy “kopni do sebe pár piv, nabastli skript, druhej den se chytni za hlavu a nech to plavat”. Sosáčky sem.
PS. Předkpokládá se, že máte k disposici python, cron a telefén u O2
January 24th, 2009
Na DPP byl bagrem vyštrachán pěkný seznam čidel, moniturujících teplotu vzduchu, silnice a rychlost větru na místech v Praze (abych to uved’ na pravou míru - bagr hledal ceny jízdenek a našel čidla. To, že ceny jízdenek mimo P0 nenašel je nasnadě…). Stránka se mi celkem zamlouvá. Ne, že bych nějak dal na teploty, ale v souvislosti s trochou volnýho času, kterýho se mi teď dostává, jsem se rozhod’ konečně zkusit první “Hello čidlo!” v Ruby. První kontakt mě docela znechutil, protože jak se zdá Ruby < 1.9.1 trpí dětskejma nemocema spojenýma s délkou řetězce v unicode. Za pomoci deepje a Googlu mi trvalo půl hodiny, než se mi to podařilo vyřešit. Zlatý prciny (PHP,Python).
#!/usr/bin/ruby
$KCODE="u"
require ‘uri’
require ‘net/http’
require ‘jcode’
data = "http://www.dpp.cz/flash/data/meteo.xml"
xml = Net::HTTP.get_response(URI.parse(data).host, URI.parse(data).path)
if xml.code == ‘200′ then
matches = xml.body.gsub(‘0.0′,‘—’).
scan(%r{.*?<name>(.*?)</name><air>(.*?)</air><road>(.*?)</road><wind>(.*?)</wind>}mi)
puts "\nčidlo\t\tvzduch\tsilnice\tvítr\n[kde]\t\t[°C]\t[°C]\t[m/s]\n————————————-"
for place in matches
padd = place[0].jsize > 7?"\t":"\t\t"
puts place[0]+padd+place[1]+"\t"+place[2]+"\t"+place[3]
end
else puts ‘!!ERR: Failed to fetch ‘+data
end