2012-05-29 91 views
6

Quiero saber una forma de obtener ID de tweet para controlar qué tweets se han mostrado en la línea de tiempo del usuario en la aplicación de Python que estoy usando usando tweepy.¿Cómo obtener ID de tweet (since_id, max_id) en tweepy (python)?

Parece que no hay forma de que obtenga los identificadores de tweets ni los mantenga al tanto. El parámetro para mantener el control es since_id. Por favor, si alguien pudiera ayudar.

Respuesta

4

La biblioteca tweepy sigue de cerca el twitter API. Todos los atributos devueltos por esa API están disponibles en los objetos de resultado; por lo que para los mensajes de estado que hay que buscar en la tweet object description a ver que tienen un parámetro de id:

for status in api.user_timeline(): 
    print status.id 

tienda la más reciente id para sondear si hay actualizaciones.

+0

gracias, voy a mirar en eso. –

+0

¿Qué es api.user_timeline? – Veltro

+0

@Liam: la colección [Twitter 'status/user_timeline'] (https://dev.twitter.com/rest/reference/get/statuses/user_timeline). También vea la [documentación de la API Tweepy] (http://tweepy.readthedocs.org/en/v3.2.0/api.html#timeline-methods). –

1

El max_id y since_id son parámetros para el método api.user_timeline().

Utilizando el objeto tweepy.Cursor() podría ser algo como esto:

tweets = [] 
    for tweet in tweepy.Cursor(api.user_timeline, 
         screen_name=<twitter_handle>, 
         since_id = <since_id> 
         ).items(<count>): 
     tweets.append(tweet) 
+0

Esto se vería mejor si formateó su línea un poco mejor con el tweepy multilínea.Cursor() –

+0

@ Danijel-JamesW ¡siéntase libre de editar! El formato actual es según mi pep8 linter :) –