Python Webアプリケーション プログラミング

【Python】LINEのAPIでメッセージを送信を自動化する

この記事は約4分で読めます。

 

こんにちは、ミナピピン(@python_mllover)です!

 

今回はLineのAPIを使ってPythonでプッシュ通知を自動化してみました。もう使い古されたネタだと思うので自分に適当にまとめておきます。

 

チャンネルの作成

 

まずLineのデベロッパーサイトにログインして通知を送るチャンネルを作成します。アカウントはビジネスアカウントではない個人用アカウントで問題ないです。

 

コンソールにログインしたら、新規の「Providers」をcreateで作成し、その中に「Create a channel」⇒「Messaging API」を選択し新規チャンネルを作成します。名前や説明は適応でいいですが、botのチャンネル名になるので、あまり適当にしすぎないほうがいいかもです、

 

チャンネルを作成したら、「Messaging API」⇒「Messaging API settings」に表示されているQRコードを自身のスマホのLineアカウントから読み込んで友達登録します。これでBOTとのトークルームが作成されます。

 

アクセストークンの発行

 

そして、「Messaging API」のタブ画面の下の方に「Channel access token」という欄が存在します。ここでissue(発行)というボタンがあるので、それをクリックしてチャンネルのアクセストークンを発行します。

 

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

 

最後にLineのAPIをラッピングしてライブラリしたものがあるのでそれをインストールします。

 

# ライブラリのインストール
$pip install line-bot-sdk

 

自分のユーザーIDの取得

 

BOTの操作に必要な送り先となる自分のアカウントIDを知っておく必要があるのですが、これが少し厄介です。これはLineの設定画面で表示されているIDとは違いLINEが内部で保持しているアカウントIDとなります。これを把握するためにはherokuとflaskを使ってwebhookサーバーを立ち上げるしかないです。

 

herokuとflaskによるLineのWebhookサーバーの構築の説明が長くなるので、記事にまとめていますのでそちらを参考にしてください。

 

関連記事:【Python】HerokuでLineのAPI用のwebhookサーバーを立てる

 

それがめんどくさい人は自分の作ったLine内部内部ユーザーID確認BOTを友達追加して適当なワードを送ると内部IDを返してくれます。

 

詳細:【LINE】MessagingAPIで自分のLINEアカウントの内部ユーザーIDを確認する

 

これで前準備は完了です。

Python+Messaging APIでメッセージを送信する

 

from linebot import LineBotApi
from linebot.models import TextSendMessage

YOUR_CHANNEL_ACCESS_TOKEN = '自分のアクセストークン'
line_bot_api = LineBotApi(YOUR_CHANNEL_ACCESS_TOKEN)

def main():
    user_id = "自分の内部ユーザーID"
    messages = TextSendMessage(text=f"こんにちは😁\n\n"
                                    f"最近はいかがお過ごしでしょうか?")
    line_bot_api.push_message(user_id, messages=messages)

if __name__ == "__main__":
    main()

 

これでBOTアカウントから自分のLINEアカウントにこんにちは~という通知が送られてきます

 

続編:【Python】Heroku上にLine Messaging API用のwebhookサーバーを作る

 

 

参考:https://qiita.com/kotamatsuoka/items/6f56d0d0a3225160b4d0

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

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