Python Tweepy/如何使用direct_messages方法获取旧的DMs?

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

我对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, 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条消息。