获取新浪微博的Access_token

最近想爬取新浪微博的评论,百度了一下,有个新浪开放平台提供了这个API

于是按照它的说明,去获取Access_token:

1、点击微链接

2、立即创建微链接

3、选择网页应用

4、填写信息后提交

5、应用创建完后可以在“我的应用”中查看信息

6、在“应用信息”--“高级信息”中可以设置网站的授权回调页和取消授权回调页,记住自己的授权回调页

7、进入

https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI

YOUR_CLIENT_ID:即应用的AppKey,可以在应用基本信息里查看到。

YOUR_REGISTERED_REDIRECT_URI:即之前填写的授权回调页,注意一定要完全相同。

如果用户授权成功后,会跳转到回调页,开发者此时需要得到url参数中的code值,注意code只能使用一次。

8、参考文档

访问如下页面得到Access Token:

https://api.weibo.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE

我的问题就出在这里:

这一步得到错误:

{"error":"HTTP METHOD is not suported for this request!","error_code":10021,"request":"/oauth2/access_token"}
查找错误信息发现是请求方式不对,应该是post方式,我们上面这样属于get方式
于是自己编写python代码:
import urllib2
import urllib
values={}
values['client_id'] = '*****'
values['client_secret'] = '****'
values['grant_type'] = '------'
values['code'] = '-------'
values['redirect_uri'] = '------'
data = urllib.urlencode(values)
url = "https://api.weibo.com/oauth2/access_token"
request = urllib2.Request(url,data)    #使用post方法
# geturl = url+'?'+data
# request = urllib2.Request(geturl) #get()方法
response = urllib2.urlopen(request)
print response.read()

得到Access_token,接下来就可以自己写代码爬取评论了。

参考:http://www.cnblogs.com/e241138/archive/2013/03/15/sina-weibo-oauth-access_token.html

转载于:https://www.cnblogs.com/CQUTWH/p/6081755.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值