【问题标题】:How can I get tweets more than a year我怎样才能收到超过一年的推文
【发布时间】:2016-11-24 01:45:23
【问题描述】:

我正在尝试使用 tweepy 获取推特时间,但我无法获取一年多前的旧推文。

我的 Python 脚本如下所示:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
from __future__ import unicode_literals
import tweepy
import json

CONSUMER_KEY = 'XXXXXXXXXXXXXXXXXXXXX'
CONSUMER_SECRET = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
ACCESS_TOKEN = 'XXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
ACCESS_SECRET = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)
api = tweepy.API(auth)

user = api.get_user(screen_name='twitter_acount')
for tw in tweepy.Cursor(api.user_timeline, user_id=user.id, count=15000).items():
    json_str = json.dumps(tw._json)
    print json_str
    print '\n'

我执行此脚本是为了获取发布超过 15000 条推文的用户的推文,但我只获得了大约 3113 条推文,而我获得的最早推文的日期是 2015 年 11 月 22 日,即一年前。

【问题讨论】:

  • 曾几何时我试过这个。但我认为你不能得到超过一年的推文。如果你想你必须以商业方式去推特。

标签: python twitter tweepy


【解决方案1】:

Twitter 搜索 API 限制为 7 天的历史记录,时间线 API 限制可检索的推文数量。其实你应该only be able to fetch 3200 Tweets所以我不确定你是怎么看9800的。

如果您需要历史数据,那么Twitter's Gnip products 提供全面覆盖。这些是商业 API。

【讨论】:

  • 你是对的。我犯了错误。我计算了空行。我得到的 3113 条推文是正确的。
猜你喜欢
  • 1970-01-01
  • 2018-12-12
  • 1970-01-01
  • 2016-11-03
  • 2017-04-20
  • 2014-08-04
  • 1970-01-01
  • 1970-01-01
  • 2023-01-04
相关资源
最近更新 更多