PythonでLine通知やってみた


pythonを用いてLineNotifyを送信するプログラムを作ったので、載せてみます。
これから通知を作りたい人の参考になれば幸いです。

目次

コードを読まなくてもいいよって方は4から見ても大丈夫です
1.背景
2.やったこと
3.コード
4.使い方
5.まとめ

背景

  • 機械学習の学習時間が非常に長い...
  • 学習させている間に他のことをしていたい
  • 学習が終了したら教えてほしい

やったこと

  • 他のファイルからimportして使えるようにした
  • LineNotifyを用いて自分にLineメッセージを送れるようにした

コード

もっとシンプルに作っても良かったのですが、今後も使っていく事を考えてモジュール化しました。
コードはGithubに載せておきます。
requests がインストールされていないと使えないのでしてない方はインストールしてください。

>> pip install requests

実際のコード↓
(簡単な処理しか書いていないので説明は省略します。)

line_notify.py
"""
class module
LINE Notify を使うクラスを定義
"""
# coding: utf-8
import requests


class LineNotify():
    """
    LINE通知を行うクラス
    """

    def __init__(self):
        """
        Parameters
        ----------
        url: string
            LineNotifyの送り先
        access_token: string
            LineNotifyのアクセストークン
        """
        self.url = "https://notify-api.line.me/api/notify"
        self.access_token = 'F78NKUuw6BhAytCPpjw2QgXXMmxV58iOxBA0HtQfYzh'

    def post_linenotify(self, message):
        """
        Lineにメッセージを送る

        Parameters
        ----------
        self : self
            クラス自身
        message: string
            実際に送るメッセージ
        """
        headers = {'Authorization': 'Bearer ' + self.access_token}
        payload = {'message': message}
        requests.post(self.url, headers=headers, params=payload,)

使い方

LineNotifyの公式からアクセストークンを取得してくる。

右上の自分の名前をクリックしマイページへ行く。

マイページ下部のトークンを発行するをクリックする。

送りたいグループを選択して発行されたトークンをコピーする

Githubからクローンする

クローンした後にアクセストークンを設定する

self.access_token = 'ここに取得したトークンを入れる'

実際にメッセージを送信するコードを書く

main.py
from line_notify import LineNotify


def main:
    notify = LineNotify()
    message = '送信するメッセージ'
    notify.post_linenotify(message)


if __name__ == '__main__':
    main()

こんな感じで使えると思います。

まとめ

  • LineNotifyをpythonを用いて送信してみた
  • コードのモジュール化

もし、使えそうな方がいれば使ってみてください。