2017-02-22 30 views
0

Я пытаюсь получить 10 твитов. Я устанавливаю счет 5 и применяю «для него в диапазоне (2)». Это означает, что он должен получать не более 10 твитов. Но здесь он дает мне 15 твитов, в которых tweets id из твитов с 1 по 5 появляются дважды.выбор твитов с помощью rest_api в python

alltweet=[] 
def rest_query_ex3(): 
      query = "road" 
        geo = "42.6525,-73.7572,9mi" 
        MAX_ID = None 
        for it in range(2): # should Retrieve up to 10 tweets 
         tweets = myApi.search(q=query, geocode=geo, count=5, max_id=MAX_ID) 
         if tweets: 
         MAX_ID= tweets[-1].id 
         alltweet.extend(tweets) 
         for pk in alltweet: 
          print pk.id 


    if __name__ == '__main__': 

     rest_query_ex3() 

На этом изображении некоторые твиты id повторяются и дают мне более 10 твитов. Может кто-то пожалуйста, помогите мне в этом, используя rest_api в питона enter image description here

ответ

1

Это ваше print заявление

for pk in alltweet: 
         print pk.id 

Первый раз в loop он будет печатать 5 твитов.

В следующий раз это prints (5 + 5) твиты.

Таким образом, это prints всего 15 твитов.

Может быть, вы хотели бы переместить printloop из другого forloop как:

for it in range(2): # should Retrieve up to 10 tweets 
         tweets = myApi.search(q=query, geocode=geo, count=5, max_id=MAX_ID) 
         if tweets: 
         MAX_ID= tweets[-1].id 
         alltweet.extend(tweets) 
for pk in alltweet: 
    print pk.id 
+0

@mithleshgupta пожалуйста, вы можете в моей другой вопрос здесь http://stackoverflow.com/questions/42399741/rest -api-использующие-твитов-которые-не-демпинг-в-файл-в-питон – pk786

 Смежные вопросы

  • Нет связанных вопросов^_^