2017-01-20 2 views
0

J'essaie d'utiliser la bibliothèque tweepy dans l'un de mes projets python. Lorsque j'essaie le code suivant qui crée un curseur tweepy pour récupérer les messages d'état de la chronologie d'un utilisateur, le paramètre count est toujours ignoré.le paramètre count est ignoré lors de l'interrogation de user_timeline dans tweepy

def search(self, username, keyword, consumer_key, consumer_secret, access_token, access_token_secret): 
    #start twitter auth 
    try: 
     auth = tweepy.OAuthHandler(consumer_key, consumer_secret) 
     auth.set_access_token(access_token, access_token_secret) 
     api = tweepy.API(auth) 
     user = api.get_user(username) 
    except Exception as e: 
     print(str(e)) 
     self.error = str(e) 
     return 
    self.followercount = user.followers_count 
    self.screenname = user.screen_name 
    results = [] 
    for status in tweepy.Cursor(api.user_timeline, id=username, count=2).items(): 
     try: 
      tweet = status._json 

Dans ce cas, le nombre est défini sur 2 dans l'objet Curseur, mais il les reçoit tous. Qu'est-ce que je fais mal?

Répondre

1

tweepy.Cursor() ne semble pas reconnaître un argument count. En fait, count n'est mentionné nulle part dans tweepy/cursor.py, le module où tweepy.Cursor est défini. Au lieu de cela, il semble que vous pouvez utiliser:

for status in tweepy.Cursor(api.user_timeline, id=username).items(2): 

passer la limite à items() au lieu comme l'argument mot-clé count. Voir this section dans le tweepy Cursor tutorial.

+0

Lorsque j'utilise '.items (2)', il renvoie zéro résultat, alors qu'il y a des résultats quand j'utilise '.items()' sans aucun argument. C'est vraiment étrange parce que la documentation suggère que les éléments (n) devraient fonctionner. –

+0

C'est très étrange. Lorsque vous utilisez simplement '.items()', retourne-t-il tous les éléments? Est-ce que l'utilisation de '.pages (n)' fonctionne comme prévu? – elethan

+0

Désolé pour le délai de réponse, j'ai reçu une notification à propos de cette question aujourd'hui. Après avoir fait une erreur d'essai, 'items (n)' a fonctionné à ce moment-là. –