繁体   English   中英

使用 Python tweepy 查找旧推文

[英]Find old tweets using Python tweepy

蟒蛇 3.9.5

tweepy == 4.10.0

我正在尝试使用 tweepy 获取旧推文,但效果不佳(显示 0 结果)。 这是我尝试过的。

BEARER_TOKEN = "My Token"

DATE_STA = "2020-01-01T00:00:01Z"
DATE_END = "2020-06-01T23:59:59Z"

client = tweepy.Client(BEARER_TOKEN, wait_on_rate_limit=True)
user = client.get_user(username="hellopolicy")
res = client.get_users_tweets(
    user.data.id,
    end_time     = DATE_END,
    start_time   = DATE_STA,
    max_results  = 100,
    tweet_fields = ["text", "created_at", "conversation_id", "public_metrics"]
)

print(res)
# Response(data=None, includes={}, errors=[], meta={'result_count': 0})

但是,如果我使用查询(from:hellopolicy since:2020-01-01 until:2020-06-01)从网络上手动搜索它,我可以在此期间看到许多推文。

此行为取决于目标 ID。 他们中的大多数人正确地显示了所有结果,但其他人(10 人中有 1 人)只显示了几周或什么也没有。 ID 中的推文数量无关紧要。

为什么会发生这种情况,我怎样才能获得所有推文?

get_users_tweets()文档( 见这里):

只有 3200 条最新推文可用。

因此,如果从那时起他发送了 3 200 条推文,您将无法访问该用户在此时间间隔内的推文。

由于您可以使用标准 API抓取的日期范围有限,您可能不会返回任何结果。 如引述:

Twitter 搜索 API 根据过去 7 天内发布的最新推文样本进行搜索。

我有一个脚本可能有助于在我的GitHub 上抓取旧推文以规避此问题。 希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM