我对Twitter API很新。我更新了Tweepy。我不知道这段代码有什么问题,以及如何修复它以使其适用于新版本的Twitter API:
import oauth, tweepy
from time import sleep
#stars is confident information
username = "*******"
password = "***********"
auth = tweepy.BasicAuthHandler(username, password)
api = tweepy.API(auth)
api.update_status('hello from tweepy!')
终端向我展示了这个:
$ python py/twi.py
Traceback (most recent call last):
File "py/twi.py", line 11, in <module>
api.update_status('hello from tweepy!')
File "/usr/lib/python2.7/dist-packages/tweepy/binder.py", line 179, in _call
return method.execute()
File "/usr/lib/python2.7/dist-packages/tweepy/binder.py", line 162, in execute
raise TweepError(error_msg, resp)
tweepy.error.TweepError: [{'message': 'The Twitter REST API v1 is no longer active. Please migrate to API v1.1. https://dev.twitter.com/docs/api/1.1/overview.', 'code': 68}]
请帮忙。
答案 0 :(得分:0)
根据this google groups post,tweepy应该支持1.1 API。您的错误消息报告tweepy正在尝试使用1.0 API。我怀疑你的更新失败了。尝试卸载并重新安装tweepy。你用的是什么版本的tweepy? tweepy.__version__
应为2.0
答案 1 :(得分:0)
您正在使用具有用户名和密码的基本身份验证。但是,Twitter API 1.1仅支持OAuth。以下是您使用OAuth和Tweepy进行身份验证的方式:
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(key, secret)
根据this page。