【twiiter API】pythonとtweepyを使った自動RT、いいね

概要

twitter APIによる自動RT、いいね機能を作成

環境

プログラム

tweepyを使用するうえでの準備

始めに次のコードを実施することでtweepyが使用できるようになる
wait_on_rate_limitを使用すると利用制限があった場合、自動で待ってくれるので便利

import tweepy

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)

api = tweepy.API(auth)

参考サイト
https://kurozumi.github.io/tweepy/getting_started.html#hello-tweepy https://kurozumi.github.io/tweepy/api.html#tweepy-api-twitter-api-wrapper

①疑似的なツイートIDの作成

疑似的なツイートIDを作成する理由

ツイートIDはツイートされた時間を元に作成される、
またtwitter apiで期間を決めて検索する際にツイートIDを使う
そのため、疑似的なツイートIDを作成すると、好きな期間で検索することができる

since_idにツイートIDを指定すると、そのツイートより新しいツイートを結果として返す
idは作成した疑似的なツイートID
qは検索ワード

public_tweets = api.search(q, since_id=id)

疑似的なツイートIDの作成方法
millisecond_epochはミリエポック秒UNIX時間)

(millisecond_epoch - 1288834974657) << 22 = tweet id

参考サイト

引っかかった点

  • いいねとRTをしたときに下のエラー文がでた
    tweepy.error.TweepError: Read-only application cannot POST.
    解決策はDeveloperサイトで権限の変更とtokenの再発行が必要
    Consumer KeysはそのままでOK

  • 検索ワードの注意点
    検索ワードは一部のワードが含まれるとヒットすると思っていたがそういうわけでもなさそう?
    「フォロ」という検索ワードでは「フォロー」が含まれるツイートはヒットしない

全体的に参考にしたもの