使用tweepy从Python进行xAuth
我正在用Python写一个Twitter客户端应用程序。我想用xAuth来进行身份验证。我选择的库是tweepy,因为它看起来能满足我所有的需求。
这是我的问题:
>>> import tweepy
>>> auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
>>> auth.get_xauth_access_token('username', 'password')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "tweepy/auth.py", line 152, in get_xauth_access_token
raise TweepError(e)
tweepy.error.TweepError: HTTP Error 401: Unauthorized
我的用户名和密码都是正确的,我可以用它们登录。而且CONSUMER_{KEY,SECRET}也有效,我是从我的应用程序页面上复制过来的。
你们知道为什么上面的代码会失败吗?
1 个回答
2
你有没有给Twitter的客服发邮件,请他们为你的应用开启xAuth?
Twitter只希望桌面和移动应用使用xAuth,所以注册的应用默认是关闭xAuth的,你需要找Twitter的人帮你开启。如果你的应用没有开启xAuth,你会收到一个401的错误。
要开启xAuth,你可以给api@twitter.com发一封邮件,邮件里写上你的应用名称和需要xAuth的理由,比如说在我的桌面应用中弹出一个网页浏览器是不合适的。