Python LINE message APIにてLINEへメッセージを送る雛形コード

 本記事では、下図のようにpythonスクリプトの実行によって、LINEへメッセージを送信する雛形コードを載せました。

 使用するにあたっては完全に無料ではなく、'24/4/27現在の無料プラン(コミュニケーションプラン)は、送信できるメッセージ数は月に200通までです。そのため、送信した数についても確認できるように表示するコードを記載しました。LINE APIのリンクは次の通り。https://developers.line.biz/ja/docs/messaging-api/getting-started/#using-console そして、料金プランについては次のリンクです。https://developers.line.biz/ja/docs/messaging-api/overview/#line-official-account-plan

 上記のことができるようになれば、例えば、株価調査などやりたいことをpythonコードにして定期実行によってLINEに通知することも可能になります。但し、定期実行するには、クラウドを使う。もしくは24時間常時稼働させる個人PC(最近流行りのミニPC等)を準備する必要があります。

■ライブラリのインストール

pip install line-bot-sdk

■本プログラム

import requests
import json

# ラインにメッセージを送信する関数
def send_line_message(token, message):
    url = 'https://api.line.me/v2/bot/message/broadcast'
    # headerを定義
    headers = {
            'Authorization': 'Bearer ' + token,
            'Content-Type' : 'application/json'
            }

    # json書式でメッセージ
    message_list = {
            'messages' : [
                {
                    'type':'text',
                    'text':message
                    }
                ]
            }
    # jsonへエンコード
    data = json.dumps(message_list)
    response = requests.post(url, headers=headers, data=data)

# メッセージ送信数を表示する
def get_message_count(token):
    url = "https://api.line.me/v2/bot/message/quota/consumption"
    headers = {
        "Authorization": "Bearer " + token
    }
    response = requests.get(url, headers=headers)
    if response.status_code == 200:
        data = response.json()
        return data["totalUsage"]
    else:
        return "Error: " + response.text

token = "<LINE Developersで取得したアクセストークン>"
message = "こんばんワイン!"

send_line_message(token, message)
print("今月のメッセージ送信数:", get_message_count(token))

以上

<広告>