【Python】line notifyで画像を送信する

note
  • 第2引数にファイルパスを渡さない場合はメッセージのみを送信する
  • ファイルオープンに失敗した場合もメッセージの送信は続行する

スクリプト

import requests
​
LINE_URL = "https://notify-api.line.me/api/notify"
LINE_TOKEN = ""
​
def line_notify(message: str, file_path: str = None):
    headers = {"Authorization": "Bearer " + LINE_TOKEN}
    payload = {"message": message}
    try:
        if file_path:
            with open(file_path, "rb") as f:
                files = {"imageFile": f}
                requests.post(LINE_URL, headers=headers, params=payload, files=files)
        else:
            requests.post(LINE_URL, headers=headers, params=payload)
    except OSError:
        line_notify("not found: " + file_path + "\n" + message)
    except requests.exceptions.RequestException:
        pass

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