Pythonスキルの習得

【 Python 】Line Notify の使い方解説 – メッセージ、画像を送る方法 –

【 Python 】Line Notify の使い方解説 - メッセージ、画像を送る方法 -

本記事により、

  • Python入門者の方
  • Line Notifyって何?

という方でも

  • PC上のPythonコードから、Lineに「メッセージや、画像」を送信する方法

を習得できます。

Line Notifyとは

Line Notifyの主な特徴は、以下の通りです。

  • アプリケーション、Webサービス等から、プッシュ通知を送れる
  • 無料で使用可能(一部、有料)
  • 定期/不定期に、通知することが可能
  • 様々な外部サービスと、連携可能(GitHubとか)

LINEが提供する公式アカウント「LINE Notify」から、通知されることになります。

下記写真の、送信者をご参照ください。

◆ 筆者の使用事例

金融の自動売買システムを運用しています。

「売買成績を Lineで自分に通知」 する使い方をしています。

「好きなイラスト」も併せて、送ってます(笑)

Line Notify の使い方

Line Notify 使い方の流れは、以下の通りです。

下記①〜②は、Line Notify サイト上で実施します。

  1. Line Notifyのサイトにログイン
  2. 通知先を選択し、アクセストークンを発行
  3. プログラムより、Line通知を送信する

順番に紹介していきます。

Line Notify のサイトにログイン

下記サイトにアクセスして、ログインして下さい。

https://notify-bot.line.me/ja/

登録メールアドレスが、分からない方は、下記方法で確認できます。

  1. スマホのLineアプリを立上げ、ホーム画面に移動
  2. 「設定」をタップ(右上の、歯車アイコン 等)
  3. 「アカウント」をタップ
  4. 「メールアドレス」を確認

通知先を選択し、アクセストークンを発行

  • TopPage右上の「ユーザ名」をクリック
  • メニューが開くので、「マイページ」をクリック

マイページ画面に遷移します。

  • 画面下部の、「トークンを発行する」をクリック

アクセストークン 発行画面に遷移します。

  • トークン名(任意でOK)を入力 (通知時に表示)
  • 送信先を選択
    • 自分に送信する場合は、下絵の「1:1でLine ・・・」を選択
    • トークルーム名を選択する事も可能
  • 「発行する」をクリック

アクセストークンがポップアップで表示。

トークンの文字列が、ポップアップで、表示されます。

必ず、メモして下さい。

アクセストークンは、本画面が閉じられると、再表示するできません。

その際は、再発行して下さい。

プログラムより、Line通知を送信する

必要なパッケージのインストール

「requests」ライブラリを使用します。

下記コマンドにて、インストールして下さい。

pip install requests

メッセージを送信する場合

コード全体を紹介した後に、要点を記しました。

import requests

# 取得したTokenを代入
line_notify_token = '取得したトークン'

# 送信したいメッセージ
message = '送りたいメッセージ'

# Line Notifyを使った、送信部分
line_notify_api = 'https://notify-api.line.me/api/notify'
headers = {'Authorization': f'Bearer {line_notify_token}'}
data = {'message': f'{message}'}
requests.post(line_notify_api, headers=headers, data=data)

  • 上記コード中の、line_notify_token に、「取得したトークン」を記載して下さい。
  • 送信先URLは、コード中に記載したURL( line_notify_api 部分 )になります。
  • POST送信時のヘッダーには、トークン認証のため、Bearer を使用しています。

POST送信する際は、ネットワークエラー等により、例外が発生する可能性があります。

try文を使うべきですが、上記コードは、分かりやすさ優先のため、省略しています。

メッセージ送信結果

画像を送信する場合

コードを紹介した後に、要点を記しました。

import requests

# 取得したTokenを代入
line_notify_token = '取得したトークン'

# 送信したいメッセージ
message = '送りたいメッセージ'

# Line Notifyを使った、送信部分
line_notify_api = 'https://notify-api.line.me/api/notify'
headers = {'Authorization': f'Bearer {line_notify_token}'}
data = {'message': f'{message}'}
# 送信用の画像を準備
files = {'画像ファイルへのパス': open('gazou.png', 'rb')}
requests.post(line_notify_api, headers=headers, data=data, files=files)

  • 上記コード中の、line_notify_token に、「取得したトークン」を記載して下さい。
  • 上記コード中の、画像ファイルへのパスは、’./test.jpg’ みたいな形で、記載して下さい。

メッセージ送信結果

メッセージを送信してから、画像が送信されます。

最後に

Line Notifyを使った、Pythonコードをご紹介しました。

思ったよりも簡単で、拍子抜けされた方もいるかと思います。

今後ですが、「ディープラーニングで作った画像を、Line Notifyで送信する」という記事を、作ってみようかな? とも思っております。

ふとした瞬間に、「クスッ」と笑えるものが、いいと思いました(笑)

それではまた、お会いしましょう!