TwitterAPI V2のアクセス認証の部分をモジュール化してみた

なんか調子よくLIVA君がTwitterbotになりつつあるのですが、Twitterの認証の部分が邪魔くさくなってきたので、ここをモジュール化することにした。

LIVA君(LINUX MINT)からPython+tweepy+cronで時報をお知らせするようにしました – happyman web

1.モジュール化概要

関数として良く使うものは、その部分だけモジュール化したら良いらしい。

「my_module」みたいなサブディレクトリを作って、中身の入っていない「__init__.py」と言うファイルを突っ込んでやると、そこに入っている「.py」のファイルはモジュールとして読み出してくれる。

pythonで自作関数をモジュール化・パッケージ化 – Qiita

 #自作関数のインポート
from ディレクトリ名 import モジュール名

とするようだ。

2.TwitterAPIの部分をモジュール化してみる

つまり図示した部分をモジュール化します。

格納先を「my_module」フォルダに入れてやる。

3.残りの部分で動かしてみる。

from my_module import haptweepyapi

と言う記載をしてやる。

def CreateTweet(message):
    tweet = haptweepyapi.ClientInfo().create_tweet(text=message)
    return tweet

モジュール化している関数を読み出すために、モジュール化のファイル名を頭に付けます。

できました。日本語おかしいけどね。

import tweepy
from my_module import haptweepyapi
from pprint import pprint
from datetime import datetime

# 時刻を取得
datetime_dat = datetime.now()
time_str = datetime_dat.strftime('%H:%M')
print(time_str)

# ★メッセージを指定
message = "窓際おじさんのはぴぞうが"+time_str+"をお知らせします。"

# 関数
def CreateTweet(message):
    tweet = haptweepyapi.ClientInfo().create_tweet(text=message)
    return tweet

# 関数実行・結果出力

pprint(CreateTweet(message))