Diesmal Wetterinformationen von Livedoor Livedoor | Wetterinformationen von Livedoor Bringen Sie Informationen von API. Standardmäßig werden die Wetterinformationen von Kagoshima abgerufen. Wenn Sie dem Argument den Code eines anderen Bereichs geben, werden die Wetterinformationen dieses Bereichs abgerufen. Den Code für jede Region finden Sie in der ID der einzelnen Regionen unter der folgenden URL. http://weather.livedoor.com/forecast/rss/primary_area.xml
weather_api.py
#encoding:utf-8
import urllib2, sys
import json
try: citycode = sys.argv[1]
except: citycode = '460010' #Standardbereich
resp = urllib2.urlopen('http://weather.livedoor.com/forecast/webservice/json/v1?city=%s'%citycode).read()
#Konvertieren Sie die gelesenen JSON-Daten in den Wörterbuchtyp
resp = json.loads(resp)
print '**************************'
print resp['title']
print '**************************'
print resp['description']['text']
for forecast in resp['forecasts']:
print '**************************'
print forecast['dateLabel']+'('+forecast['date']+')'
print forecast['telop']
print '**************************'
Bei Ausführung (Stand: 29.06.2015)
$ python weather_api.py
**************************
Präfektur Kagoshima Wetter in Kagoshima
**************************
Der südliche Teil von Kyushu ist meist sonnig.
In der Amami-Region gibt es Orte, an denen es stark regnet.
Der südliche Teil von Kyushu wird am 29. mit hohem Druck bedeckt sein, aber allmählich das Tal des Drucks und
Wird von feuchter Luft beeinflusst. Am 30. wird es von der Regenzeit betroffen sein
Es ist beinhaltet.
Die Amami-Region wird am 29. von der Regenzeit betroffen sein. 30. ist Pflaume
Wird voraussichtlich von Regenfronten und feuchter Luft betroffen sein.
Das südliche Kyushu ist am 29. sonnig und nachts bewölkt. 30. ist der Anfang
Es ist bewölkt, aber es wird allmählich regnen, und es wird erwartet, dass es Orte geben wird, an denen es sehr heftig mit Donner regnen wird.
Ich werde.
Die Amami-Region wird am 29. mit Donner sehr stark regnen.
.. Am 30. gibt es Orte, an denen es stark vom Donner regnet, aber es wird allmählich bewölkt.
Es ist beinhaltet.
In der Amami-Region werden am 29. hohe Temperaturen erwartet. Achten Sie daher auf das Gesundheitsmanagement wie Hitzschlag.
Bitte beachten Sie.
Auf See werden die Wellen am 29. ein wenig hoch sein oder einige Wellen. 30
Es wird erwartet, dass es Orte geben wird, an denen die Wellen allmählich ansteigen.
Kirishimayama(Shinnendake)Wind etwa 1500 Meter über dem Himmel
29. 09:00 Nordostwind 3 Meter
Vorhersage von 21:00 Uhr am 29. Ostwind 2 Meter
Wind von ca. 1500 Metern über Sakurajima
29. 09:00 Ostwind 5 Meter
Vorhersage von 21:00 Uhr am 29. Südostwind 2 Meter
<Zu beachtende Punkte wie Wetteränderungen>
In Yakushima-cho ist es am 29. meist bewölkt. Der 30. ist zunächst bewölkt
Es gibt jedoch Orte, an denen es morgens regnet und vom Nachmittag bis abends sehr heftig mit Donner regnet.
Es gibt eine Aussicht.
**************************
heute(2015-06-29)
Sonnig dann bewölkt
**************************
Morgen(2015-06-30)
Regen
**************************
übermorgen(2015-07-01)
Bewölkt manchmal Regen
**************************
urllib2 urllib2 ist ein Python-Modul, das Ressourcen aus URLs im Netz abruft.
import urllib2
response = urllib2.urlopen('http://python.org/')
html = response.read()
Referenz: http://docs.python.jp/2/howto/urllib2.html
In diesem Code
resp = urllib2.urlopen('http://weather.livedoor.com/forecast/webservice/json/v1?city=%s'%citycode).read()
Korrekt. Hier erhalten wir Ressourcen von der API von "http://weather.livedoor.com".
sys.argv sys definiert Funktionen, die eng mit der Bedienung des Interpreters zusammenhängen.
Interpreter: Ein Interpreter ist eine Software, die ein Programm ausführt, während eine von einem Menschen in einer Programmiersprache geschriebene Software-Entwurfszeichnung (Quellcode) in ein Format (Objektcode) konvertiert wird, das von einem Computer ausgeführt werden kann. Interpreter-Sprachen sind langsamer als Compiler-Sprachen, da sie bei der Ausführung des Programms konvertiert werden. Quelle: [IT-Terminologie e-Words | Interpreter](http://e-words.jp/w/%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%97 % E3% 83% AA% E3% 82% BF.html)
Besonders hier verwenden wir sys.argv. Auf diese Weise können Sie Argumente über die Befehlszeile empfangen. Da `argv [0]`
den Skriptnamen erhält, verwendet dieser Code das erste Argument `argv [1]`
.
Referenz: sys - Systemparameter und -funktionen Python: Befehlszeilenargumente abrufen - Variable sys.argv
try, except Versuchen Sie, die Fehlerbehandlung zu behandeln. Wenn in der try-Klausel keine Ausnahme auftritt, wird die Except-Klausel übersprungen. Wenn eine Ausnahme auftritt, führen Sie die Ausnahmeklausel aus.
Wenn es diesmal ein Befehlszeilenargument gibt, geben Sie diesen Code dem Stadtcode, andernfalls geben Sie Kagoshimas Code dem Stadtcode. Referenz: 8. Fehler und Ausnahmen
json Ich verwende das JSON-Modul, um den abgerufenen JSON zu dekodieren.
json.loads()
Dieses Mal werden die empfangenen Daten vom JSON-Typ in den Wörterbuchtyp konvertiert. 18.2. Json - JSON-Encoder und -Decoder
Recommended Posts