Сбой очистки данных из Twitter неожиданно - Python 3.x - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь использовать Tweepy , чтобы создать вектор признаков для модели машинного обучения.

Сначала я пытаюсь сохранить всех своих подписчиков в списке, к которому я могу обратиться позжесобирать метаданные о них. Ниже приведен код, который я адаптировал из нескольких примеров:

import tweepy
import time

#insert your Twitter keys here
consumer_key =''
consumer_secret=''
access_token=''
access_token_secret=''
twitter_handle='TimBarbalace'

auth = tweepy.auth.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth, wait_on_rate_limit=True)

users = []

if(api.verify_credentials):
    print("We successfully logged in")

user = tweepy.Cursor(api.followers, screen_name=twitter_handle).items()

while True:
    try:
        u = next(user)
        users.append(u)

    except:
        time.sleep(2*60)
        print("We got a timeout ... Sleeping for 2 minutes")
        u = next(user)
        users.append(u)

Этот код начинает работать (когда я добавил операторы печати, я мог видеть добавление некоторых ручек Twitter), но в итоге завис. Я оставил это в течение приблизительно 15 минут, и я не могу продвинуться дальше. В конечном итоге мне нужно Ctrl + C подать заявку, и я получаю следующую трассировку:

Traceback (most recent call last):
  File "WiP2.py", line 25, in <module>
    u = next(user)
  File "C:\Users\Jerry\AppData\Local\Programs\Python\Python37\lib\site-packages\tweepy\cursor.py", line 47, in __next__
    return self.next()
  File "C:\Users\Jerry\AppData\Local\Programs\Python\Python37\lib\site-packages\tweepy\cursor.py", line 195, in next
    self.current_page = self.page_iterator.next()
  File "C:\Users\Jerry\AppData\Local\Programs\Python\Python37\lib\site-packages\tweepy\cursor.py", line 73, in next
    **self.kargs)
  File "C:\Users\Jerry\AppData\Local\Programs\Python\Python37\lib\site-packages\tweepy\binder.py", line 250, in _call
    return method.execute()
  File "C:\Users\Jerry\AppData\Local\Programs\Python\Python37\lib\site-packages\tweepy\binder.py", line 162, in execute
    time.sleep(sleep_time + 5)  # sleep for few extra sec
KeyboardInterrupt

Я не уверен, что означает эта ошибка или почему я не могу собрать всех своих подписчиков в список. Как я могу ввести информацию об учетной записи и переместить всех своих подписчиков в список?

1 Ответ

0 голосов
/ 05 ноября 2019

Следующий кодовый блок, взятый из вопроса в комментариях, достигает этого:

import tweepy
import time

#insert your Twitter keys here
consumer_key =''
consumer_secret=''
access_token=''
access_token_secret=''
#twitter_handle='TimBarbalace'

auth = tweepy.auth.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify = True)

users = []

if(api.verify_credentials):
    print("Logged In Successfully")
else:
    print("Error -- Could not log in with your credentials")

followers = tweepy.Cursor(api.followers).items()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...