Tweepy:tweepy.error.tweeperror'代码'215'消息''错误的身份验证数据。'

时间:2018-09-05 07:22:33

标签: python-3.x jupyter-notebook tweepy

我不确定这里出了什么问题。以下代码可以使用到2天之前。我在tweepy的{​​{1}}上使用3.6.0版本号python3。现在,当我执行下面给出的代码时,我不断收到错误jupyter notebook。我究竟做错了什么?我已经看过类似的帖子123456,但没有解决方案。注意,我还重新生成了密钥,但错误仍然存​​在。

代码是;

TweepError: [{'code': 215, 'message': 'Bad Authentication data.'}]

执行此代码时返回以下错误,

import tweepy
ckey = 'xxx'
csecret = 'xxx'
atoken = 'xxx'
asecret = 'xxx'

# OAuth process, using the keys and tokens
auth = tweepy.OAuthHandler(ckey, csecret)
auth.set_access_token(atoken, asecret)
# Creation of the actual interface, using authentication
api = tweepy.API(auth)
# collect tweets on #MRT
for tweet in tweepy.Cursor(api.search,q="MRT",count=100,
                           lang="en",rpp=100,
                           since="2017-04-03").items():
  print (tweet.created_at, tweet.text)

任何建议都会有所帮助。

3 个答案:

答案 0 :(得分:0)

我复制了您的代码并在系统中执行了该代码,但找不到任何错误。我正在使用tweepy 3.6.0Python 3.5.2。我已经对您的代码进行了两次编辑。

import tweepy
ACCESS_TOKEN = "#####"
ACCESS_TOKEN_SECRET = "#####"
CONSUMER_KEY = "####" 
CONSUMER_SECRET = "#####"

# OAuth process, using the keys and tokens
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
# Creation of the actual interface, using authentication
api = tweepy.API(auth, wait_on_rate_limit=True, wait_on_rate_limit_notify=True)
# collect tweets on     #MRT
for tweet in tweepy.Cursor(api.search,q="MRT",count=100,
                       lang="en",rpp=100).items():
    print (tweet.created_at, tweet.text)

请注意两个参数tweepy.APIwait_on_rate_limitwait_on_rate_limit_notify 这两个参数非常重要,因为您想保持tweets的流向,因为search API仅给您提供certain amount of tweets per request

您有一个TweepError with status code 400。根据文档,它说:

  

该请求无效或无法通过其他方式提供。随附的错误消息将进一步说明。未经身份验证的请求将被视为无效,并将产生此响应。

一个可能的解释是您的twitter API keys已不再进行身份验证,因为您已经请求了超过Twitter速率限制的

希望这会有所帮助。

答案 1 :(得分:0)

我使用双引号解决了这个问题,我发现您使用了单引号

CONSUMER_KEY =“ xxx”;

答案 2 :(得分:0)

我有同样的问题。重新生成密钥和令牌可以解决该问题。