使用python从twitter的用户名获取用户ID

时间:2012-10-08 03:13:41

标签: python twitter

我正在尝试使用python

获取twitter用户的用户ID
import twitter
twitter_api = twitter.Twitter(domain='api.twitter.com', api_version='1',auth = twitter.oauth.OAuth(ACCESS_KEY, ACCESS_SECRET,
CONSUMER_KEY, CONSUMER_SECRET))
usr = twitter_api.api.GetUser(SCREEN_NAME)
print usr.name

不起作用,调试信息没什么帮助,我在网上找不到更多资源。

1 个答案:

答案 0 :(得分:4)

您实例化的twitter_api对象隐式地将对其执行的所有函数调用转换为API URL的路径,并将任何关键字参数转换为API参数。例如:

twitter_api.statuses.user_timeline()
# ^- this converts to "api.twitter.com/1/statuses/user_timeline.json"

twitter_api.statuses.user_timeline(user_id="a")
# ^- this converts to "api.twitter.com/1/statuses/user_timeline.json?user_id=a"

twitter_api.statuses.user_timeline(foo)
# ^- this breaks - "foo" is not a key/value pair, and cannot be sent

因此,你试图调用URL 1/api/GetUser.json - 并且还传递一个参数,它不知道如何处理。试试这个:

import twitter
t = twitter.Twitter(auth=twitter.OAuth(ACCESS_KEY, ACCESS_SECRET, CONSUMER_KEY, CONSUMER_SECRET))
t.users.lookup(screen_name=SCREEN_NAME)
# returns the user object