LoginSignup
0
1

More than 3 years have passed since last update.

#2_Raspberry Pi 3B+からLINEに天気予報を通知

Last updated at Posted at 2020-05-15

Raspberry Pi 3B+からLINE Notifyを使ってスマホに天気予報を通知

東京に来てから突発的な雨にうたれることが多くて
「朝ちゃんと天気予報をチェックしておけば...」と後悔することがしばしば。

LINEに毎朝天気予報が送られてくればいいんじゃない?と思い立って作ってみることにしました。

1.下記のURLからLINE Notifyへ

2.右上の「ログイン」ボタンをクリックしてLINEアカウントにログイン

image5.png

3.右上の自分のアカウント名の右矢印を押して「マイページ」をクリック

image1.png

4.「トークン名を入力してください」の項目にどういう名前で通知が欲しいか入力。

 今回は「weather_report」としました。
 「通知を送信するトークルームを選択してください」の項目から自分のアカウントを選択
 最後に「発行する」をクリック
image2.png

5.「トークンを発行する」をクリック

image3.png

6.トークンが発行されるのでこれをコピーしてテキストエディタなどに控えておいてください

 もしコピーする前にダイアログを閉じてしまった!という場合は再度発行することができるのでご安心を
image4.png

7.プログラムを作成

8行目の
headers = {'Authorization': 'XXX',}
「XXX」の部分に先ほど発行したトークンを貼り付けます

weather.py

#!/usr/bin/python
#coding: utf-8

import requests
import json

# 「XXX」には発行したLINE Notify トークンを貼り付ける 
headers = {'Authorization': 'Bearer XXX',}

def get_weather():
    url = 'http://weather.livedoor.com/forecast/webservice/json/v1'
    payload = {'city': '130010'}
    data = requests.get(url, params = payload).json()

    for weather in data['forecasts']:
        report = '\n' + data['title'] + '\n' + weather['dateLabel'] + ':' + weather['telop']
        files = {'message': (None, report),}
        response = requests.post('https://notify-api.line.me/api/notify', headers=headers, files=files)
        break

    return

if __name__ == '__main__':

    get_weather()



8.プログラムを実行

image6.png

☆天気予報の受け取り成功!(なんて時間にやってるんだ...)

Screenshot.png

16行目のreport変数の内容を書き換えれば天気予報に限らず色々なメッセージをLINEへ送信することができます。
1時間かからず実装できるのでお試しあれあられ。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1