我不知道这里出了什么问题。下面的代码直到两天前才开始工作。我正在使用tweepy版本号3.6.0在jupyter notebook中的python3上。现在,当我执行下面给出的代码时,我总是会得到错误,TweepError: [{'code': 215, 'message': 'Bad Authentication data.'}]。我做错了什么?我已经看过类似的帖子1、2、3.、4.、5和6,但没有解决方案。注意,我也重新生成了键,但错误仍然存在。
守则是;
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)在执行此代码时,将返回以下错误
---------------------------------------------------------------------------
TweepError Traceback (most recent call last)
<ipython-input-11-b3e4ffb2d94f> in <module>()
2 for tweet in tweepy.Cursor(api.search,q="MRT",count=100,
3 lang="en",rpp=100,
----> 4 since="2017-04-03").items():
5 print (tweet.created_at, tweet.text)
~\Miniconda3\lib\site-packages\tweepy\cursor.py in __next__(self)
47
48 def __next__(self):
---> 49 return self.next()
50
51 def next(self):
~\Miniconda3\lib\site-packages\tweepy\cursor.py in next(self)
195 if self.current_page is None or self.page_index == len(self.current_page) - 1:
196 # Reached end of current page, get the next page...
--> 197 self.current_page = self.page_iterator.next()
198 self.page_index = -1
199 self.page_index += 1
~\Miniconda3\lib\site-packages\tweepy\cursor.py in next(self)
106
107 if self.index >= len(self.results) - 1:
--> 108 data = self.method(max_id=self.max_id, parser=RawParser(), *self.args, **self.kargs)
109
110 if hasattr(self.method, '__self__'):
~\Miniconda3\lib\site-packages\tweepy\binder.py in _call(*args, **kwargs)
248 return method
249 else:
--> 250 return method.execute()
251
252 # Set pagination mode
~\Miniconda3\lib\site-packages\tweepy\binder.py in execute(self)
232 raise RateLimitError(error_msg, resp)
233 else:
--> 234 raise TweepError(error_msg, resp, api_code=api_error_code)
235
236 # Parse the response payload
TweepError: Twitter error response: status code = 400任何建议都会有帮助。
发布于 2018-09-05 18:37:20
我复制了您的代码并在我的系统中执行了它,但没有发现任何错误。我正在使用tweepy 3.6.0和Python 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.API:wait_on_rate_limit和wait_on_rate_limit_notify。如果您想让tweet继续运行,这两个参数非常重要,因为search API只为您提供了一个 http://docs.tweepy.org/en/v3.5.0/api.html。
你有一个400。根据文件,它说:
请求无效或无法以其他方式送达。随附的错误信息将进一步解释。未经身份验证的请求被视为无效,并将产生此响应。
一个可能的解释是,您的twitter API keys不再进行身份验证,因为您请求的超出了twitter的速率限制。
希望这能帮上忙。
发布于 2019-06-25 15:15:40
我也有同样的问题。重新生成密钥和令牌解决了这个问题。
发布于 2019-05-28 20:32:10
我用双引号解决了问题,我看到你用单引号
CONSUMER_KEY = "xxx";
https://stackoverflow.com/questions/52179345
复制相似问题