LoginSignup
20
13

More than 3 years have passed since last update.

友達の誕生日を通知するLinebot

Posted at

はじめに

友達が多ければ多いほど,みんなの誕生日を記憶するのは難しいですよね.
僕は友達が多いので(嘘), 友達の誕生日を通知してくれるLinebotを作成しました.

手順

  1. LINE Notifyにログイン
  2. マイページからアクセストークンを発行
  3. 発行したトークンをpython scriptにコピー & ペーストして,友達の誕生日を登録
  4. crontabを使って毎日00:00にプログラムを実行

手順1. LINE Notifyにログイン

LINEアカウントでログインしましょう.
アカウント情報はLINEアプリの「設定>アカウント」から確認できます.

手順2. マイページからアクセストークンを発行

スクリーンショット 2021-01-23 15.54.16.png
自分とLINE Notifyの1:1のやりとりなら,トークンを発行するだけでOK!!
グループとLINE Notifyのやりとりなら,グループにLINE Notifyを招待しよう

手順3.

以下のコマンドを打って,誕生日通知レポジトリをクローンしましょう.
尚,このレポジトリの99%はPythonでLINEにメッセージを送るに準じます.

git clone https://github.com/rikukawamura/LINEBirthdayNotify.git

main.pyにアクセストークンと友達の誕生日を設定.

main.py
from line_notify_bot import LINENotifyBot
import datetime

# coding: UTF-8
date = str(datetime.date.today()).split('-')
month, day = date[1], date[2]

bot = LINENotifyBot(access_token='アクセストークンをペースト')

if month=='月(e.g.01)' and day=='日(e.g.01)':
    bot.send(
        message='\n{}月{}日は{}の誕生日'.format(month, day, '名前')
    )
elif month=='01' and day=='01':
    bot.send(
        message='\n{}月{}日は{}の誕生日'.format(month, day, '山田太郎')
    )

手順4.

crontabを使って毎日00:00にmain.pyを実行.

PATH=/Users/kawamurariku/.pyenv/versions/anaconda3-2019.10/condabin:/usr/local/Cellar/pyenv-virtualenv/1.1.3/shims:/Users/kawamurariku/.pyenv/shims:/Users/kawamurariku/.pyenv/bi$
00 00 * * * python /Users/kawamurariku/LINEBirthdayNotify/main.py
LANG=ja_JP.UTF-8

crontabについては,以下を参考にした.
【保存版】cronでPython3を定時実行する方法&注意すべき4つのポイント

出力確認

こんな感じで通知が来ると思います.
スクリーンショット 2021-01-27 16.50.07.png
[test]の部分は,手順2.で設定した以下のトークン名が表示されます.
スクリーンショット 2021-01-27 16.53.16.png

終わりに

今回は,LINE APIを使用して,友達の誕生日を通知するBotを作成しました.
LINEは毎日使うし,これなら友達の誕生日を忘れることもなさそうです.
他にも,あったらいいのになと思ったBotを暇があれば作りたいと思います.
最後までご閲覧ありがとうございました.

20
13
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
20
13