この記事では、PythonでLINEのメッセージと画像を送信する方法を紹介します。
- 対象読者
- LINEのAPIを使って、メッセージと画像を送信したい方
- Pythonで実装したい方
- 処理に時間のかかるコードを実行したときに、ずっとパソコンの前に居たくない方
- 定期実行しているコードの実行結果を知りたい方
処理に時間がかかるコードを実行したとき、いつ終わったのか知りたい時ってありますよね。
私の場合は、外出中に自宅PCでコードを定期実行しているので、コードがちゃんと実行されているのか、さらに実行結果はどうなったか気になるんですよ。
そんな時に便利なのが、今回紹介する「LINE Notify」というサービス。
この記事を読むと、以下のことができるようになります。
- 内容
- LINEのAPIを使って、メッセージと画像を送信することができるようになる
- Pythonの基本的な構文が身に付く
- LINE Notify(LINEのメッセージングAPI)の使い方が理解できるようになる
- APIの基礎知識が身に付く
それではこれから豊富な画像と共に、詳しく解説していきます。
- 実行環境
- Windows 10
- Python 3.6
- LINE バージョン8
LINE Notifyとは
LINE Notifyとは、LINEが提供しているメッセージングAPIのことで、ウェブサービスと連携させることでメッセージを送信できます。
Pythonでメッセージを送信するには?
PythonでLINEのメッセージを送信するためには、次のような手順で設定をしていきます。
- アクセストークンを取得
- LINE Notifyアカウントをトークルームに招待
- 送信する画像を用意
- コードを書いて実行
LINE Notifyのアクセストークンの取得
1.公式サイトにアクセスして、LINEのアカウントでログイン。
4.【トークン名】と【トークルーム】を選択。
ここで、間違って仲良くもない人に送らないように注意してください笑
メッセージを送信するルームに「LINE notify」を招待
「LINE Notify」という、メッセージを送信するためのアカウントをトークルームに招待します。
Pythonから画像付きメッセージを送信
さぁ、準備が整いました!
以下のコードを実行することで、Cドライブ直下に配置した【test.png】(C:/test.png)という画像を添えて「これはテストです。」というメッセージを送信できます。
import requests
def notify(message, *args):
# 諸々の設定
line_notify_api = 'https://notify-api.line.me/api/notify'
line_notify_token = '[Your access token]' # メモしておいたアクセストークンに置換
headers = {'Authorization': 'Bearer ' + line_notify_token}
# メッセージ
payload = {'message': message}
# 画像を含むか否か
if len(args) == 0:
requests.post(line_notify_api, data=payload, headers=headers)
else:
# 画像
files = {"imageFile": open(args[0], "rb")}
requests.post(line_notify_api, data=payload, headers=headers, files=files)
if __name__ == '__main__':
notify('これはテストです。', 'C:/test.png')
お手元のスマートフォンのLINEを開き、以下のような画面になっていれば成功です。
今日のまとめ
今回の記事のまとめです。
- LINE Notifyの基本的な使い方
- LINEのAPIを使って、メッセージと画像を送信
- Pythonの基本的な構文
- APIの基礎知識
これで、「処理が終了するまで眠れない…」とか「定期実行しているあの処理どうなったかなぁ」という悩みが解消されると思います。 ぜひ、有効活用してください。