我正在尝试使用最新版本的 Twython 和 Python 2.7.3 设置流。我正在尝试在依赖于OAuth1 文档的流式文档中重现该示例。使用以下代码会产生 401 错误,直到我终止执行:
from twython import Twython
from twython import TwythonStreamer
class MyStreamer(TwythonStreamer):
def on_success(self, data):
if 'text' in data:
print['text'].encode('utf-8')
def on_error(self, status_code, data):
print status_code
APP_KEY = 'mupAeFE44nOU5IlCo4AO0g' # Consumer key in twitter app OAuth settings
APP_SECRET = 'NOTMYSECRET0zo1WbMAeSIzZgh1Hsj9CrlShonA' # Consumer secret in OAuth settings
twitter = Twython(APP_KEY,APP_SECRET)
auth = twitter.get_authentication_tokens()
OAUTH_TOKEN = auth['oauth_token']
OAUTH_TOKEN_SECRET = auth['oauth_token_secret']
stream = MyStreamer(APP_KEY, APP_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
stream.statuses.filter(track = 'twitter')
'OAUTH_TOKEN' 和 'OAUTH_TOKEN_SECRET' 的值最终设置为 unicode 字符串。我已将 'APP_KEY' 和 'APP_SECRET' 设置为上述或 unicode 字符串,两者的结果相同。
按照这个报告的问题中的建议,我更新了 requests 和 requests-oauthlib,但没有运气。
我不相信我有防火墙问题。在这一点上,我已经在三个不同的盒子上尝试了这段代码,它们都在不同的语言环境中,结果都一样。
目前不知道如何进行。所有帮助表示赞赏。