Twitter,错误:urllib.error.HTTPError:HTTP错误401:未授权
问题描述:
def send_to_twitter(): msg = "I am a message that will be sent to Twitter" password_manager = urllib.request.HTTPPasswordMgr() password_manager.add_password("Twitter API", "http://twitter.com/statuses", "username", "password") http_handler = urllib.request.HTTPBasicAuthHandler(password_manager) page_opener = urllib.request.build_opener(http_handler) urllib.request.install_opener(page_opener) params = urllib.parse.urlencode({'status': msg}) resp = urllib.request.urlopen("http://twitter.com/statuses/update.json", params) resp.read()
当我通过IDLE执行此代码时,出现错误;Twitter,错误:urllib.error.HTTPError:HTTP错误401:未授权
urllib.error.HTTPError: HTTP Error 401: Unauthorized
我的代码可能有问题吗?
答
Twitter no longer supports HTTP Authentication。你应该使用oauth代替。
tweepy似乎是一个很好的图书馆,如果你想从Python做Twitter:它是最新的,支持宣誓,看起来非常完整。
+0
+1对于Tweepy很好的库建立了我自己的客户端:) – 2010-09-19 07:34:14
答
您正在使用旧的HTTP身份验证方法。使用OAuth升级。
转到下面的链接设置你的Twitter应用程序:twitter.com/apps/new (提示:您可以将您的网址为127.0.0.1用于测试目的并记住应用程序设置为浏览器,并指定回调URL)
你可以从那里继续。
这是必须用错误的用户名或密码做些什么.. – Dananjaya 2010-09-19 07:10:42