python3でLine Notifyを使用してメッセージ(文章、画像、スタンプ)を送る方法メモ。
大きく2ステップです。
Line Notifyのアクセストークン発行
以下へアクセス。
![](https://growplants.jp/wp-content/uploads/cocoon-resources/blog-card-cache/cff42f16916b88efcfc7e93d6cc14e45.png)
LINE Notify
LINE NotifyはGitHub,IFTTT,MackerelなどのWebサービスからの通知を、LINEで受信することが出来る便利なサービスです。
ログインします。
![](https://growplants.jp/wp-content/uploads/2020/10/LineNotify-1-1024x478.png)
右上のマイページリンクからアクセストークンを発行します。
![access-token](https://growplants.jp/wp-content/uploads/2020/10/access-token-1024x589.png)
トークン名、トークルームを選択し、トークンを発行します。
![token](https://growplants.jp/wp-content/uploads/2020/10/token.png)
トークンは忘れずにメモします。
![](https://growplants.jp/wp-content/uploads/2020/10/access-token2.png)
Python3からLineへメッセージを送信する
メッセージだけであれば以下で送信可能です。
import requests
url = "https://notify-api.line.me/api/notify"
access_token = '取得したアクセストークン'
headers = {'Authorization': 'Bearer ' + access_token}
message = 'test message'
payload = {'message': message}
r = requests.post(url, headers=headers, params=payload)
requestsを利用し、headerにtokenを付与して、postメソッドでurl、header、payloadを引数にして実行するだけです。
なお、messageに空文字は指定できません。
簡単ですね。
画像・スタンプなどの送信方法
画像を送信する場合
postメソッドへのパラメータにfilesを追加します。
import requests
url = "https://notify-api.line.me/api/notify"
access_token = '取得したアクセストークン'
headers = {'Authorization': 'Bearer ' + access_token}
message = 'image test'
image = './sample.jpg' # jpgもしくはpng
payload = {'message': message}
files = {'imageFile': open(image, 'rb')}
r = requests.post(url, headers=headers, params=payload, files=files)
こちらもmessageに空文字は指定できません。何かの対策でしょうか。
スタンプを送信する場合
postメソッドへの引数:payloadにstickerPackageIdとstickerIdを追加します。
import requests
url = "https://notify-api.line.me/api/notify"
access_token = '取得したアクセストークン'
headers = {'Authorization': 'Bearer ' + access_token}
message = 'stamp test'
payload = {
'message': message,
'stickerPackageId': 1,
'stickerId': 13,
}
r = requests.post(url, headers=headers, params=payload)
stickerPackageIdとstickerIdの組み合わせによるスタンプの種類は以下を参照します。
https://devdocs.line.me/files/sticker_list.pdf
以下を参照しました。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZ0eHQ9UHl0aG9uJUUzJTgxJUE3TElORSVFMyU4MSVBQiVFMyU4MyVBMSVFMyU4MyU4MyVFMyU4MiVCQiVFMyU4MyVCQyVFMyU4MiVCOCVFMyU4MiU5MiVFOSU4MCU4MSVFMyU4MiU4QiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MzU2Mjk3MzhlZTkyODE1MDZjMDM1ZjBiNmQzNGY1YTQ&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbW9yaWl0YSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9ZGVlMTcxNmUxMmRlN2M3MDY0ODBmNzg0NzNmYjE0NTQ&blend-x=142&blend-y=491&blend-mode=normal&s=bb619ae998d36898c338d0696907bf36)
PythonでLINEにメッセージを送る - Qiita
はじめに何番煎じかわかりませんが,Python x LINE NotifyでLINEにメッセージを送れるボットを作ったので,その備忘録です。深層学習モデルの学習など,時間がかかる処理を回している…
コメント