#Raspberry Pi 3B+からLINE Notifyを使ってスマホに天気予報を通知
東京に来てから突発的な雨にうたれることが多くて
「朝ちゃんと天気予報をチェックしておけば...」と後悔することがしばしば。
LINEに毎朝天気予報が送られてくればいいんじゃない?と思い立って作ってみることにしました。
####1.下記のURLからLINE Notifyへ
https://notify-bot.line.me/ja/
####2.右上の「ログイン」ボタンをクリックしてLINEアカウントにログイン
####3.右上の自分のアカウント名の右矢印を押して「マイページ」をクリック
####4.「トークン名を入力してください」の項目にどういう名前で通知が欲しいか入力。
今回は「weather_report」としました。
「通知を送信するトークルームを選択してください」の項目から自分のアカウントを選択
最後に「発行する」をクリック
####6.トークンが発行されるのでこれをコピーしてテキストエディタなどに控えておいてください
もしコピーする前にダイアログを閉じてしまった!という場合は再度発行することができるのでご安心を
####7.プログラムを作成
8行目の
headers = {'Authorization': 'XXX',}
「XXX」の部分に先ほど発行したトークンを貼り付けます
#!/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()
☆天気予報の受け取り成功!(なんて時間にやってるんだ...)
16行目のreport変数の内容を書き換えれば天気予報に限らず色々なメッセージをLINEへ送信することができます。
1時間かからず実装できるのでお試しあれあられ。