Search 4 Truth

Search 4 Truth

Pythonと仮想通貨

【Python】特定の単語を含むツイートを自動でふぁぼるbotを作った

 Tweepyを使って自動お気に入り登録ツールを作ってみました。これは指定した文字列に反応して、その単語が含まれているツイートを見つけたら自動的にお気に入り登録するというものです。

例えば、自分の名前やブログ名が入っているツイートを見つけたらお気に入り登録する、自動でエゴサしてくれるツールとなっているので、なにかと応用してみると面白そうです。

今回は、「仮想通貨」という文字列に反応するbotを作ってみました。

使用した環境

・MacBook Air Early 2015 Sierra 10.12.6 Python 3.6.2

必要なもの

tweepy

 使用するモジュールはtweepyのみです。無い方はインストールしておいてください。 

pip3 install tweepy

アクセストークン等のキー

以下の記事の「各種キーの取得」という項目に沿って「Consumer Key」、「Consumer Secret」、「Access Key」、「Access Secret」をそれぞれ発行してメモしておいて下さい。

www.pypi.cf

コード

import tweepy

def api():
    consumer_key = 'consumer_key'
    consumer_secret = 'consumer_secret'
    access_key = 'access_key'
    access_secret = 'access_secret'
    auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_key, access_secret)
    api = tweepy.API(auth)
    return api

#ふぁぼりたい対象の単語をSearchメソットの引数部分に文字列として代入 for tweet in api().search('ビットコイン'): id = tweet.id api().create_favorite(id)

特定の文字列を含むツイートを自動でふぁぼるやつ

これではお気に入りに登録する対象を特定の文字列の「リプライを含む全ての」ツイートとなってしまい、不快に思われる方がいらっしゃるかもしれません。なのでリプライを除く処理を追加してみました。

for tweet in api().search('仮想通貨'): 
    text = tweet.text 
    id = tweet.id 
    dic.update({id:text}) 
    if '@' in dic[id]: 
        pass
    else:
        api().create_favorite(id)

関数api以下のfor文から下の処理を差し替えてお使い下さい。

使い方

上記のソースコードをそのままコピーして「TweetFav.py」で保存しました。

先程メモしたキーをソースコードの該当箇所に代入して下さい。以上で作業は完了なので動かしてみます。

python3 TweetFav.py
起動!

f:id:lisbeths:20180129144422p:plain

できていますね〜。筆者はcrontabで自動化して日々情報収集に励んでおります。

Twitterのbotについては自動化ルールをしっかりとお読みになった上でお使い下さい。
www.pypi.cf