我正在尝试使用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
我不确定此错误的含义,或者为什么我无法将所有关注者收集到列表中。如何输入我的帐户信息并将所有关注者移动到列表中?
以下代码块来自注释中的问题,实现了这一目标:
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()