#桑名# はじめてのプログラミング教室

三重県桑名市在住のITエンジニア、たかあきです。はじめてのプログラミング教室を始めましたー。小学生と中学生の子どもがメインですが大人初心者も大歓迎。教室でのワークの様子やプログラミングに関する記事を掲載します。体験と講座のお申込みは、JEUGIAカルチャーセンター桑名(Tel:0594-27-7211)までお願いします。教室についてのご質問は、ブログにコメントいただければ返信します!

Pywapi APIを使って、Pythonで天気予報を作ろう!(後半)

pywapi APIが使いたい

  • 先日、Pythonで天気予報を作ろう!(前半)を投稿しました。32bit Windows環境のPythonにpywapi APIをインストールするまでの流れは前半を参照ください。

takaaki.hatenablog.jp

  • pywapi APIをインストールすることができましたが、なぜかpywapiモジュールを使用することができません。
    • numpyモジュールを参考にモジュールの配置先を調べてみました。
    • どうやらPython配下のLib\site-packagesにpywapiモジュールを配置する必要がありそうです。site-packagesは3rd party製のモジュールを配置するディレクトリの様です。
    • インストール後にbuildされたpywapi.pyLib\site-packagesに配置することで、無事にモジュールが使用できました。

f:id:takaaki-niikawa:20171006113342p:plain

Pywapi APIを使って天気データを取得するプログラムを作ろう!

  • pywapiに添付のexamples等を参考に、Pywapi APIを使ったプログラムを作ってみました。
    • 今回のプログラムは、weather.comからデータを取得するプログラムになります。
    • 東京はコードJAXX0085, 四日市はコードJAXX0098になります。
    • 具体的には、下記URLからのデータ取得になります。

東京, 日本の天気予報と天候状況 - The Weather Channel | Weather.com

四日市, 日本の天気予報と天候状況 - The Weather Channel | Weather.com

import pywapi
from datetime import datetime

result1 = pywapi.get_weather_from_weather_com('JAXX0085')
location1 = result1['location']['name']
condition1 = result1['current_conditions']['text']
print("##### 東京 #####")
print("location: ", location1)
print("condition: ", condition1)
result2 = pywapi.get_weather_from_weather_com('JAXX0098')
location2 = result2['location']['name']
condition2 = result2['current_conditions']['text']
print("##### 桑名 #####")
print("location: ", location2)
print("condition: ", condition2)
  • Pythonの実行結果です。 f:id:takaaki-niikawa:20171006113620p:plain

天気予報の表示プログラムは?

  • current_conditions変数は現在の天気になりますが、取得したデータのforecasts変数を使用することで明日以降の天気予報も表示できます。
  • 下記Qiitaの記事がとても参考になります。私も自分オリジナルの天気予報プログラムを作ろうと思います。

qiita.com