Solución:
En primer lugar, la API de Twitter no permite realizar búsquedas por tiempo. Trivialmente, lo que puede hacer es buscar tweets y mirar sus marcas de tiempo después en Python, pero eso es muy ineficiente.
Puede hacerlo mediante el siguiente fragmento de código.
consumerKey = "CONSUMER_KEY"
consumerSecret = "CONSUMER_SECRET"
accessToken = "ACCESS_TOKEN"
accessTokenSecret = "ACCESS_TOKEN_SECRET"
auth = tweepy.OAuthHandler(consumerKey, consumerSecret)
auth.set_access_token(accessToken, accessTokenSecret)
api = tweepy.API(auth)
username = sys.argv[1]
startDate = datetime.datetime(2011, 6, 1, 0, 0, 0)
endDate = datetime.datetime(2012, 1, 1, 0, 0, 0)
tweets = []
tmpTweets = api.user_timeline(username)
for tweet in tmpTweets:
if tweet.created_at < endDate and tweet.created_at > startDate:
tweets.append(tweet)
while (tmpTweets[-1].created_at > startDate):
tmpTweets = api.user_timeline(username, max_id = tmpTweets[-1].id)
for tweet in tmpTweets:
if tweet.created_at < endDate and tweet.created_at > startDate:
tweets.append(tweet)
Aunque muy ineficiente. Funciona, puede ayudarme a crear mi propio bot.
Acabo de usar hasta (operador opcional) y parece funcionar bastante bien. Lo usé así:
tweets = tw.Cursor(api.search,
q=search_words,
lang="en",
since=date_since,
until=date_until,
result_type="recent"
).items(2)
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)