我对使用Twitter API非常熟悉,并且正在测试一些Python代码(下面(
from tweepy import OAuthHandler
from tweepy import Stream
import twitter_credentials
class StdOutListener(Stream):
def on_data(self, data):
print(data)
return True
def on_error(self, status):
print(status)
twitter_stream = StdOutListener(
twitter_credentials.CONSUMER_KEY, twitter_credentials.CONSUMER_KEY_SECERET,
twitter_credentials.ACCESS_TOKEN, twitter_credentials.ACCESS_TOKEN_SECERET
)
twitter_stream.filter(track=['#bitcoin'])
但每当我试图运行它时,它都会出现重复的错误";流遇到HTTP错误:403〃;。我检查了Twitter API响应代码,错误403被列为禁止请求。
以下是我已经采取的一些故障排除步骤:
- 尝试了新的访问密钥/使用者密钥
- 尝试创建新的开发人员帐户
- 卸载并重新安装tweepy
这些对我都不起作用。那么是什么导致了这个错误,我该如何修复它呢?非常感谢。
如果您拥有Essential访问权限,您将无法访问Twitter API v1.1。
有关更多信息,请参阅Tweepy文档中的常见问题部分。
如果您只有Essential Access(Twitter API v2(,请使用Tweepy中的StreamingClient
而不是Streaming
。承载令牌足以用于StreamingClient。
有关其使用的更多信息:https://docs.tweepy.org/en/stable/streamingclient.html#tweepy.StreamingClient