Python-tweepy apiを学習する際に、最新の10秒間隔内に新しいツイートがあったかどうかを示すコードを少しまとめました(もちろん、実際にはコードが10秒以上あるためです。実行sleep(10)
するのにも時間がかかります):
from getApi import getApi
from time import sleep
from datetime import datetime
api = getApi()
top = api.home_timeline()[0].id
while True:
l = api.home_timeline()
if top != l[0].id:
top = l[0].id
print 'New tweet recognized by Python at: %s' % str(datetime.now())
sleep(10)
getApiは、tweepyを使用してOAuthを管理するために作成したPythonのほんの数行です。getApiメソッドは、私のアカウントが認証された状態でtweepyapiを返します。
ツイッターに新しいツイートがあるかどうかを何度も尋ねなければならないのは非常に非効率的なようです。これは通常の方法ですか?そうでない場合、それを行うための「標準的な」方法は何でしょうか?
私は次のようなコードがあると想像していました:
api.set_home_timeline_handler(tweetHandler)
tweetHandlerは、新しいツイートがあるたびに呼び出されます。