Python Tweepy/如何使用direct_messages方法获取旧的DMs?
我对Python和Tweepy非常陌生 我想说,看看自从某某DM以来我收到的所有DM的文本Python Tweepy/如何使用direct_messages方法获取旧的DMs?,python,tweepy,Python,Tweepy,我对Python和Tweepy非常陌生 我想说,看看自从某某DM以来我收到的所有DM的文本 import tweepy consumer_key = "XXXX" consumer_secret = "YYY" access_token = "ZZZ" access_token_secret = "AAA" auth = tweepy.OAuthHandler(consumer_key, consumer_secret) auth.set_access_token(access_token
import tweepy
consumer_key = "XXXX"
consumer_secret = "YYY"
access_token = "ZZZ"
access_token_secret = "AAA"
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
since_id = "11223344556677889"
#This is the ID of a month-old DM. I want to get "all" DMs since then, tho I think I'm limited to 200 per call huh?
direct_messages = tweepy.Cursor(api.direct_messages, since_id=since_id).items()
for dm in direct_messages:
print dm.text
这给了我最近的200个DMs。那不是我想要的。我想要旧的DMs,从自_id开始
FWIW,我知道DM存在,因为这会正确返回它:
dm = api.get_direct_message(since_id)
print dm.text
看起来这是一个twitter API限制: 返回最近发送到身份验证服务器的20条直接消息 用户。包括有关发件人和收件人的详细信息 用户。每次通话最多可以请求200条直接信息,并且只有 使用此端点将提供最新的200个DMs
也在努力解决这个问题。我也只得到了前200个DM。尝试对api.direct_消息使用max_id param,并在那里传递第200条消息的id,但我再次收到这条第200条消息。