您的位置:首页 > 其它

微博 获取指定用户发表的所有微博

2012-12-03 13:24 211 查看
实现比较简单,只是要从那么多API中找一个符合自己的应用的需要花点时间,特别是像我这种刚接触的,而网上没什么人发关于这方面的blog,
难度就提高一些了。没什么好多说的,一看我下面的源码,二看链接中新浪的API说明。

我使用到的新浪API statuses/user_timeline

#授权使用
APP_KEY = 'xxxxxxx'
MY_APP_SECRET = 'xxxxxxxxxx'
REDIRECT_URL = 'http://api.weibo.com/oauth2/default.html'

client = weibo.APIClient(APP_KEY, MY_APP_SECRET)
authorize_url = client.get_authorize_url(REDIRECT_URL)
print(authorize_url)
webbrowser.open_new(authorize_url)

code = raw_input("input code:")
request = client.request_access_token(code, REDIRECT_URL)
access_token = request.access_token
expires_in = request.expires_in
client.set_access_token(access_token, expires_in)

uName = "xxxx"
print getUserAllComments(client, uName)
#可以把userName改成uid
def getUserAllComments(client, userName):
i = 1
comments = ""
while (True):
pieceComment = client.get.statuses__user_timeline(count=100,screen_name=userName, page=i)
#已经获取到最早的微博信息,此时api返回的内容是空,所以以此为结束标记
if (len(pieceComment["statuses"]) == 0):
break
i += 1
#控制输出内容格式和编码--直接显示中文,否则看到的是unicode编码
content = json.dumps(pieceComment, ensure_ascii=False, indent=4, encoding="utf-8")
comments += content

return comments
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: