Pythonを使ってLINEに画像付きメッセージを送信する方法
今回は、Pythonを使用してLINEのメッセージAPIを通じて、テキストメッセージと画像を送信する方法について説明します。この機能は、日々の通知、アラート、あるいは単に友人や家族との共有に非常に便利です。
必要なもの
Pythonのインストール
LINE Notifyのアクセストークン(LINE NotifyのWebサイトから取得)
コードの概要
以下のスクリプトは、LINEのメッセージAPIを使って、テキストメッセージや画像を含むメッセージを送信します。スクリプトの主要部分を解説します:
import requests
def lineApi(lineToken, message, image):
line_notify_api = 'https://notify-api.line.me/api/notify'
payload = {'message': message}
headers = {'Authorization': 'Bearer ' + lineToken}
if not image:
# messageOnly
requests.post(line_notify_api, data=payload, headers=headers)
else:
# messageAndImage
files = {'imageFile': open(image, 'rb')}
requests.post(line_notify_api, data=payload, headers=headers, files=files)
if __name__ == '__main__':
lineToken = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
message = 'sendMessege'
image = 'image.jpg' # or fullPath
lineApi(lineToken, message, image)
この関数は、LINEのトークン、送信するメッセージ、およびオプションの画像パスを引数として受け取ります。
line_notify_api = 'https://notify-api.line.me/api/notify'
payload = {'message': message}
headers = {'Authorization': 'Bearer ' + lineToken}
ここでAPIのエンドポイント、メッセージの内容、および認証用ヘッダーを設定しています。
if not image:
requests.post(line_notify_api, data=payload, headers=headers)
else:
files = {'imageFile': open(image, 'rb')}
requests.post(line_notify_api, data=payload, headers=headers, files=files)
image引数がない場合は、テキストのみのメッセージを送信します。画像が指定されている場合は、その画像を添付してメッセージを送信します。
使い方
LINE NotifyのWebサイトからアクセストークンを取得します。
このスクリプトをPythonファイルとして保存し、トークンとメッセージ、必要に応じて画像のパスを指定して実行します。
まとめ
この簡単なスクリプトを使って、LINEを通じてテキストメッセージや画像を送信することができます。日々の生活や業務での通知、アラートに活用することで、情報共有を効率的に行うことが可能です。