Pythonで天気予報を取得!気象庁APIの使い方を初心者向けに解説

PRについて
※このサイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています。
スポンサーリンク
※このサイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています。
Pythonで天気予報を取得!気象庁APIの使い方を初心者向けに解説 Tips集
Pythonで天気予報を取得!気象庁APIの使い方を初心者向けに解説

「毎朝、アプリを開いて天気を確認するのが少し面倒…」
「Pythonを勉強中だから、何か実用的で面白いコードを書いてみたい!」

そんなあなたにぴったりなのが、Pythonを使って天気予報を自動で取得するプログラムです。

ごまこ
ごまこ

天気の情報を手に入れるのって難しそうなんですが..
簡単にできるんですか?

ごまお
ごまお

はい!
実は気象庁の公式データを簡単に取得できるんです!
一緒に試してみましょう!!

今回は、プログラミング初心者でも安心の「気象庁」の公式データを使って、たった数行のコードで今日の天気を取得する方法をご紹介します。

面倒な設定は一切なし!

ブラウザだけで今すぐ試せますよ。

なぜ「気象庁」のデータを使うの?

天気予報を取得できるサービス(API)は世界中にたくさんありますが、Python初心者に「気象庁のデータ」を強くおすすめするのには理由があります。

  1. 完全無料で登録不要!
    海外の天気APIなどは「APIキー」というパスワードの取得や、会員登録が必要なことが多いですが、気象庁のデータはURLにアクセスするだけで誰でもすぐに使えます。
  2. 安心の公式データ
    気象庁が発表しているデータなので、情報の正確さや信頼性は抜群です。
  3. 日本語で分かりやすい
    海外サービスのように英語を翻訳する必要がなく、「晴れ 夕方から くもり」といった自然な日本語で取得できます。

準備はゼロ!5分で実際に動かしてみよう

パソコンにPythonをインストールしていなくても大丈夫!

Googleが無料で提供している「Google Colaboratory(グーグル・コラボ)」を使えば、ブラウザ上ですぐにプログラムを動かせます。

ステップ1:Google Colabを開く

Googleアカウントにログインした状態で、Google Colaboratoryにアクセスし、画面右下の「ノートブックを新規作成」をクリックします。

ステップ2:以下のコードをコピペする

画面に「▶」ボタンがついた入力欄(セル)が出たら、そこへ以下のコードをすべてコピーして貼り付けてください。

import requests

# 1. 天気予報を取得するためのURL(130000は東京)
jma_url = "https://www.jma.go.jp/bosai/forecast/data/forecast/130000.json"

# 2. 気象データをJSON形式で取得
response = requests.get(jma_url)
jma_json = response.json()

# 3. 今日の東京の天気を抽出し、余分なスペースを削除
jma_weather = jma_json[0]["timeSeries"][0]["areas"][0]["weathers"][0].replace(' ', '')

# 4. 結果を画面に表示
print("今日の東京の天気は:")
print(jma_weather)

ステップ3:実行する!

入力欄の左側にある「▶(再生ボタン)」をポチッと押してみてください。

(※初回は数秒〜十数秒かかることがあります)

コードの下に、

今日の東京の天気は:
晴れ時々くもり

のように、最新の天気情報が表示されたら大成功です!🎉

なぜこのコードで天気が取れるの?(仕組みの解説)

「動いたけど、この呪文みたいな英語は何をしているの?」という方のために、コードの裏側を少しだけ解説します。

  • 130000.json って何?
    これは気象庁が定めている「地域コード」です。東京都は130000という番号が割り当てられており、このURLにアクセスすると「東京の最新の気象データが詰まった箱」がダウンロードされます。
  • jma_json[0]["timeSeries"]... という長い行は何?
    気象庁から送られてくるデータは、マトリョーシカのように何重にも箱に入っています。
    この長い行は、「一番外側の箱を開けて([0])、時系列データの箱を開けて("timeSeries")、東京地方の箱を開けて([0])、今日の天気の箱を開ける([0])」というように、目当てのデータだけをピンポイントで探り当てるための指示書です。
  • .replace(' ', '') とは?
    気象庁の文章には読みやすくするために「全角スペース」が含まれています。
    プログラムで扱うには少し邪魔なので、この命令で「スペースを消して綺麗にしてね」とお願いしています。

自分で改造して遊んでみよう!(応用編)

プログラムの醍醐味は、自分で数字を変えて遊べることです。先ほどのコードの数字を少し書き換えて、もう一度「▶」ボタンを押してみてください。

💡 別の地域の天気を調べたい!
URLの 130000 を別の番号に変えるだけです。

  • 大阪: 270000.json に変更
  • 愛知: 230000.json に変更
  • (※「気象庁 エリアコード json」で検索すると全国の番号がわかります!)

💡 「明日」の天気を調べたい!
長い行の最後にある ["weathers"][0] の数字を変えます。

  • 今日の天気: [0]
  • 明日の天気: [1] に変更
  • 明後日の天気: [2] に変更

まとめ:ここから何が作れる?

今回は画面に天気を表示するだけでしたが、この数行のプログラムは様々なアイデアの「土台」になります。

例えば、少しPythonを勉強すれば…

  • 「毎朝7時に、今日の天気を自分のLINEに自動送信するBot」
  • 「降水確率が50%以上だったら『傘を持っていって!』とPCにポップアップを出すツール」
    なんてことも作れるようになります!

まずは「プログラムでWebから情報が取れた!」という小さな成功体験を楽しんでみてくださいね。

Pythonの学習、応援しています!

本ブログ「ゴマフリーダムのPython教室」のトップページへは以下へアクセス!

Tips集
Takahiro Matsuyamaをフォローする

達人に学ぶDB設計 徹底指南書

最短コースでわかる ディープラーニングの数学

あたらしい機械学習の教科書 第3版

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

統計学入門

タイトルとURLをコピーしました