はじめに
ノンプログラマですが,自分でも何かつくってみたくてTwitterBotをつくりました.
初学者がBot作成する際のご参考になれば幸いです.
##できたもの
wikipediaに登録されている単語から,2つの単語をランダムに取得してTweetするBotです.
https://twitter.com/Sosaku_Tango
##つくりかた
まず完成したコードがこちらです.
import tweepy, random
import schedule
import time
# 取得した各keyを代入
CK=""
CS=""
AT=""
AS=""
# インスタンス作成
auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)
api = tweepy.API(auth)
#ダウンロードしたwikipedia単語リストファイルから2つの単語をツイート
def bot():
wiki_titles = open("jawiki-latest-all-titles-in-ns0.txt", "r")
line = wiki_titles.readlines()
random_word = random.sample(line, 1)
first_word = ''.join(random_word)
random_word = random.sample(line, 1)
second_word = ''.join(random_word)
api.update_status('1.' + first_word + '2.' + second_word + '\nで創作できますか?出来上がりを楽しみにしています. #創作単語 ')
#定期的な実行
def main():
schedule.every().day.at("10:00").do(bot)
while True:
schedule.run_pending()
time.sleep(1)
main()
-
Tweepyを使用したTwitterBotの基本的な作成方法は,こちらを参考にしました.
https://qiita.com/tsc343/items/e51f412480ea8bf5619a -
Wikipediaの単語データ(.txt)はこちらからダウンロードしました.
https://dumps.wikimedia.org/jawiki/ -
txtファイルからランダムに行を抽出するコードはこちらを参考にしました.
http://tksmd.hatenablog.com/entry/20090122/p1 -
定期的な自動実行はこちらを参考にしました.
https://qiita.com/Kai-Suzuki/items/0c5c0e5cbdb4075fe482 -
完成です.お疲れ様でした.
##しょかん
最近まで手動で毎日実行していたのですが,忘れることがたびたびあったので自動実行のコードを入れました.
それを機にQiitaで初投稿してみた次第です.
フォローもいいねも0なので誰にも認識されていないのですが,興味があれば一度見てもらえると嬉しいです.
なにかお気付きの点があればコメントいただけると幸いです.