python - 如何从任何用户的推特获取 'n' 推文

标签 python twitter-bootstrap twitter pycharm python-2.x

我是 python 新手。帮帮我。 问题: 我得到了各个用户的所有推文。 我想要 n [假设 (n=20)] 条各个用户的最新推文。如何获取 n 条推文?? 下面是我的代码:

def get_all_tweets(screen_name):


    auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_key, access_secret)
    api = tweepy.API(auth)

    alltweets = []
    # make initial request for most recent tweets (200 is the maximum allowed count)
    new_tweets = api.user_timeline(screen_name=screen_name,count=200)

    alltweets.extend(new_tweets)
    print len(alltweets)

    oldest = alltweets[-1].id - 1

    while len(new_tweets) > 0:
        print "getting tweets before %s" % (oldest)
        new_tweets = api.user_timeline(screen_name=screen_name, count=200, max_id=oldest)

        # save most recent tweets
        alltweets.extend(new_tweets)


        # update the id of the oldest tweet less one
        oldest = alltweets[-1].id - 1

        print "...%s tweets downloaded so far" % (len(alltweets))



    f = open('testfile.txt', 'w+')
    for tweet in alltweets:
        f.write(str(tweet.text))
        f.write('\n')
        f.close()
    tweets = (tweet.text)
    return tweets
    pass
# to encode the data
reload(sys)
sys.setdefaultencoding('utf-8')

if __name__ == '__main__':
    get_all_tweets("xyz")

最佳答案

您是否尝试过将此行编辑为只得到 20 个?

改变:

new_tweets = api.user_timeline(screen_name=screen_name, count=200)

收件人:

new_tweets = api.user_timeline(screen_name=screen_name, count=20)

关于python - 如何从任何用户的推特获取 'n' 推文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45649699/

相关文章:

python - 在 Mac 上的 Python virtualenv 中安装 pygit2/libgit2

python - 聪明的 any() 之类的函数来检查是否至少有 n 个元素为真?

python - 使用 lambda 或列表理解来创建带循环的列表

ios - Swift 的 TwitterKit 不显示图像

python - Pandas 拉错列

twitter-bootstrap - Bootstrap 3 - 如何嵌入响应对象

html - 垂直和水平对齐页面上的 Bootstrap 行

html - 无法让 Bootstrap 网格正确对齐

java - 无法在 appium 中的 twitter LoginPage 上找到元素

java - 获得拥有 1000 个关注者的推特用户