es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo transmitir Tweets basados en una lista sin Retweets.

Estoy intentando transmitir tweets en función de cuándo ciertas personas publican a través de la transmisión en tweepy. Cuando ejecuto el siguiente código, obtengo retuits mezclados en los datos. ¿Existe alguna manera de obtener los tweets de los usuarios en tiempo real sin retuits?

    with open('twitter_list.txt') as user_list:
        usernames = user_list.read().splitlines()
    print('usernames', usernames)
    ids = [api.get_user(screen_name=username).id_str for username in usernames]
    print('ids', ids)

twitter_stream = Stream(auth,

                        MyListener(raw_file=raw_file, csv_file=csv_file, text_file=text_file, max_num=num_tweets))

twitter_stream.filter(track=key_words, follow=ids)
Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para transmitir tweets basados en cuándo ciertas personas publican a través de Streaming en tweepy sin retweets, puede utilizar el método filter con el parámetro follow en lugar de track. El parámetro ids debe contener los IDs de usuario de los usuarios que desea seguir en lugar de sus nombres de pantalla.

    Así es como puede modificar el código:

    with open('twitter_list.txt') as user_list:
        usernames = user_list.read().splitlines()
    print('usernames', usernames)
    ids = [api.get_user(screen_name=username).id_str for username in usernames]
    print('ids', ids)
    
    twitter_stream = Stream(auth, MyListener(raw_file=raw_file, csv_file=csv_file, text_file=text_file, max_num=num_tweets))
    
    twitter_stream.filter(follow=ids)
    

    Al utilizar follow=ids, solo recibirá tweets de los usuarios especificados sin ningún retweet.

Comments are closed.