【LINE Notify】 PythonでLINEの メッセージと画像を送信する方法

Python
挨拶
くろやぎ
くろやぎ

こんにちは!くろやぎ(kuroyagi_info)です。

この記事では、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のことで、ウェブサービスと連携させることでメッセージを送信できます。

LINE Notify 公式サイト

Pythonでメッセージを送信するには?

PythonでLINEのメッセージを送信するためには、次のような手順で設定をしていきます。

  1. アクセストークンを取得
  2. LINE Notifyアカウントをトークルームに招待
  3. 送信する画像を用意
  4. コードを書いて実行

LINE Notifyのアクセストークンの取得

1.公式サイトにアクセスして、LINEのアカウントでログイン。



2.ログイン後、右上の【マイページ】をクリック

3.アクセストークンの発行。

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の基礎知識

これで、「処理が終了するまで眠れない…」とか「定期実行しているあの処理どうなったかなぁ」という悩みが解消されると思います。 ぜひ、有効活用してください。

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