0
import tweepy
import re
import csv
import json
import got
auth = tweepy.OAuthHandler("APIKEY","APISCRETKEY")
auth.set_access_token("ACCESS-TOKEN","ACESS-TOKEN-SCRETKEY")
api = tweepy.API(auth,wait_on_rate_limit=True)

只有在通过 API 凭据后,我才能获取过去 7 天的数据。

follow = api.followers()
#print(follow)
tag = '#lecoqsportif OR #parfum'
fileName = '_'.join(re.findall("#(\w+)",tag))
print(fileName)
with open('%s.csv' % (fileName),'w',encoding='utf-8') as file:
    w = csv.writer(file)
    w.writerow(['timestamp', 'tweet_text', 'username', 'all_hashtags', 'followers_count'])
    for tweet in tweepy.Cursor(api.search,q = tag+'-filter:retweets',lang="en").items(10000):
        w.writerow([tweet.created_at,tweet.text.replace('\n',''),tweet.user.screen_name,[e['text'] for e in tweet._json['entities']['hashtags']],tweet.user.followers_count])

即使我请求 10000 条记录,我也只得到不到 1000 条记录,这些记录仅对应 1 周的数据。我想使用标准 API(不是付费版本)获取过去 12 个月的数据。这可能吗?如果是这样,请给我解决方案。

4

1 回答 1

0

首先,您现在需要重新生成您的凭据。

这对于标准搜索 API 是不可能的:

请记住,搜索索引有 7 天的限制。换句话说,不会找到超过一周的推文。

https://developer.twitter.com/en/docs/tweets/search/api-reference/get-search-tweets

有关降价的帮助,请参阅https://stackoverflow.com/editing-help

于 2019-12-27T04:15:41.083 回答