みなさんこんにちは、ソラです。
こんな悩みを解決していきます。
本記事で分かること
- LINE Notifyの扱い方がわかる
- PythonでLINEにメッセージを送信する方法が理解できる
スマートフォンを持っている方の約7割が利用しているメッセージアプリ、LINE。
単に友達や家族との連絡ツールとして利用していることが多いLINEですが、業務や個人的な情報集めのツールとして利用できればよりよいと思いませんか?
そこで利用できるのが今回使用するLINE Notifyです。
無料・かつ簡単にLINEにメッセージを送信できると今注目されているサービスです。
本記事ではそんなLINE Notifyを利用して、PythonでLINEにメッセージを送信する方法をまとめていきます。
< まずはプログラミング無料体験レッスンから >
目次
LINE Notifyとは
メッセージアプリ「LINE」が公式で提供している無料サービス、LINE Notify。
お持ちのLINEアカウントでログインでき、プログラムからメッセージを送信したり特定の外部Webサービスとの連携が可能です。
今回はWebサービスと連携はせず、LINEの送信のみを実行していきます。
参考までに連携できる主なサービスを記しておきます。
連携できるサービス
- GitHub
- IFTTT
- Mackerel
LINE Notifyの設定
早速、LINE Notifyの設定をおこなっていきます。
今回はLINEアカウントを持っている前提でお話していきます。
現在LINEを使用している方であれば問題ありません。
LINE Notifyの設定方法は以下の通りです。
LINE Notifyの設定方法
- 公式URLへ移動
- LINEアカウントでログインする
- トークンを発行する
1つずつ解説していきます。
公式URLへ移動
まずは以下URLへ移動しましょう。
LINEアカウントでログインする
URLへ移動すると下写真のような画面が出てきますので、ログインをクリックします。
ログインをクリックすると下写真のようなログイン画面が出てきます。
そこにLINEアカウントで登録している
入力部分
- メールアドレス
- パスワード
を入力してログインボタンをクリックしましょう。
という方はお持ちのスマートフォンのLINEアプリを開きましょう。
LINEアプリのホームで
メモ
設定(歯車アイコン) → アカウント
を開くことで、登録しているメールアドレスが確認できるはずです。
もしメールアドレスが登録されていない場合は、持っているメールアドレス(icloudやgmail)で登録しましょう。
トークンを発行する
ログインが完了すると最初のページにもどりますが、右上の名前が自分のLINEアカウント名になっているはずです。
そこをクリックし、「マイページ」をクリックしましょう。
すると下写真のような画面がでてきますので、「トークンを発行する」をクリックします。
クリックするとトークン名やトークルームの選択画面が表示されます。
ここはとりあえず以下のように設定しましょう。
設定情報
・トークン名: Pythonテスト
・送信するトークルーム: 1:1でLINE Notifyから通知を受け取る
設定したら「発行する」をクリックしましょう。
すると赤文字でトークンが発行されます。
コピーボタンをクリックして、パソコンのメモ帳やエディターに張り付けておきましょう。
このトークンがLINE送信をするうえで必要不可欠になります。
以上でLINE Notifyの設定は完了です。
< まずはプログラミング無料体験レッスンから >
PythonからLINEに送信する【サンプル】
それでは実際にPythonでLINEにメッセージを送信するプログラムを作成していきます。
今回の私の開発環境は以下の通りです。
開発環境
- Pythonバージョン: Python3.9.0
- 開発環境: VSCode
- OS: Windows10Pro 64ビット
私はVSCodeを利用していますが、他エディター
・Atom
・PyCharm
・Visual Studio
等でも全然問題ありません。
また、Pythonをまだインストールしていない方はこちらの記事を参考にインストールしましょう。
-
参考Windows版Pythonのインストール方法を解説【一緒に開発環境を作りましょう】
サンプルプログラム
今回使用するサンプルプログラムは以下の通りです。
import requests
import os
# LINEのトークン
TOKEN= "トークン番号を入力"
# LineAPIのURL
api_url = "https://notify-api.line.me/api/notify"
send_contents = "テストです"
TOKEN_dic = {"Authorization": "Bearer" + " " + TOKEN}
send_dic = {"message": send_contents}
# LINE通知を送る
requests.post(api_url, headers=TOKEN_dic, data=send_dic)
今回はLINEに送信できることに焦点を合わせているため、かなりシンプルなコードにしています。
ライブラリの宣言
ここからは少しコードの解説をしていきます。
(解説に興味ない方はこちらをクリックして飛ばしてください)
まず先頭の2行。
import requests
import os
ここで今回使用するライブラリを参照・宣言しています。
開発環境によってはrequestsが入っていない場合があります。
その場合はコマンドプロンプトやターミナルを起動して
command
pip install requests
と入力しましょう。
トークン・LINE APIの宣言
次のコードはLINE Notifyのトークン・APIの宣言を行っています。
# LINEのトークン
TOKEN= "トークン番号を入力"
# LineAPIのURL
api_url = "https://notify-api.line.me/api/notify"
”トークン番号を入力”の部分には先程、LINE Notifyで発行しメモ帳に張り付けたトークンを貼り付けます。
また、LINE NotifyのURLを宣言することでLINE APIを使用しますよという宣言を兼ねています。
上記コードはLINE Notifyを利用するにあたって必要不可欠です。
しっかり記述していきましょう。
メッセージを送信する
残りのコードを見ていきましょう。
send_contents = "テストです"
TOKEN_dic = {"Authorization": "Bearer" + " " + TOKEN}
send_dic = {"message": send_contents}
# LINE通知を送る
requests.post(api_url, headers=TOKEN_dic, data=send_dic)
send_contentsには送信したい内容を記述していきます。
今回は「テストです」という文字を代入していますが、表示するのはなんでも構いません。
次にTOKEN_dic、send_dicを見ていきます。
簡単に説明すると、
・"Authorization": "Bearer" → ログイン機能のようなもの
・"message": → 送信したい内容を渡す
という意味を持っています。
英語を約すると意外とそのままの意味だったりするので、ここがPythonを学習しやすいところですよね。
そして最後の1行でAPIを利用してLINE Notifyに送信しています。
< まずはプログラミング無料体験レッスンから >
LINEに送信して確認する
では実際にプログラムを実行して、LINEにメッセージを送信できるか確認してみましょう。
コマンドプロンプト(Macの方はターミナル)を起動しましょう。
起動したらまずは先程書いたプログラムがあるフォルダまで移動します。
※C:\python\LINE\sample.pyの場合
command
cd C:\python\LINE
移動したら次のコードを実行します。
command
python sample.py
一時するとLINEに通知が来るはずです。
上写真のようにメッセージが届けば成功です!
PythonでLINEを送信:まとめ
LINE Notifyを利用すればPythonから簡単にメッセージを送信することができます。
しかも無料で利用できるのが何よりの良いところですよね。
LINEの送信が理解できれば
メモ
・今日、明日の天気情報
・新型コロナの感染者数
など、Webスクレイピングと合わせて定期的に情報を取得することも可能です。
使い方は無限にあるので、ぜひご自身が必要とするLINE送信プログラムを作成してみましょう!
おすすめ記事
-
PythonでGUI作成ならTkinterが簡単でおすすめ【サンプルあり】