最近想爬取新浪微博的评论,百度了一下,有个新浪开放平台提供了这个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

获取新浪微博的Access_token的更多相关文章

  1. Python3获取新浪微博内容乱码问题

    用python获取新浪微博最近发布内容的时候调用 public_timeline()函数的返回值是个jsonDict对象,首先需要将该对象通过json.dumps函数转换成字符串,然后对该字符串用GB ...

  2. 微信公众号的搭建-第四天(2)-获取并缓存access_token

    1. 什么是access_token? 为了使第三方开发者能够为用户提供更多更有价值的个性化服务,微信公众平台 开放了许多接口,包括自定义菜单接口.客服接口.获取用户信息接口.用户分组接口.群发接口等 ...

  3. 【Win 10 应用开发】Web授权示例:获取新浪微博的授权码

    在使用类似微博的开放API的时候,会涉及到授权的问题,就拿微博来说,当用户在你的应用中需要调用微博API来处理一些事情时,你首先要让用户登录微博,得到用户授权后,才能调用微博API. 授权通常通过一个 ...

  4. C# 获取 新浪微博登录之后的 完整的Cookie

    程序说明: 1.此项目 包含两个项目, 一个 Winform WinGetMocroblogCookie 用于手动 登录 新浪微博 其中涉及到的技术有: 使用webbrowser 获取HttpOnly ...

  5. c#获取新浪微博登录cookie

    用新浪微博api收集数据有诸多限制,每小时只能调用官方api函数150次,认证也很麻烦.因此想通过爬网页的方式来收集数据.访问新浪微博用户网页首先需要登录,登录获取cookie后可直接获取网页数据,无 ...

  6. 微信开发之c#下获取jssdk的access_token

    获取access_token是调用微信JS接口的基础,只有得到了它才能得到我们需要的jsapi_ticket并生成签名,然后注入配置信息config. 微信官方文档我就不多做介绍,反正我是踩了不少坑. ...

  7. ASP.NET之MVC 微信公众号授权给第三方平台的技术实现流程(获取第三方平台access_token)

    “出于安全考虑,在第三方平台创建审核通过后,微信服务器每隔10分钟会向第三方的消息接收地址推送一次component_verify_ticket,用于获取第三方平台接口调用凭据”.这是文档中的原话,也 ...

  8. Java获取新浪微博cookies

    import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.F ...

  9. Python 获取新浪微博的热门话题 (API)

    Code: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-06-27 @author: guaguastd @name: ...

随机推荐

  1. Asp.net mvc中使用配置Unity

    第一步:添加unity.mvc 第二步:在添加之后会在app_start中生成UnityConfig.cs,UnityMvcActivator.cs 第三步:使用 第四步:效果展示

  2. Android WebView回退

    在使用webView时,会出现点击按钮让网页页面回到上一个页面的需求,这时可以使用goBack方法. 但是有的安卓用户会习惯点击手机自带的返回按钮,这时会直接关闭当前的activity,而不是网页页面 ...

  3. pgpool中定义的数据库节点及pgpool支持的复制模式

    /* * The first DB node id appears in pgpool.conf or the first "live" DB * node otherwise.  ...

  4. Oracle PL/SQL开发基础(第三十三弹:EXCEPTION_INIT)

    如果有一些异常并没有异常名称,比如一些ORA-开头的异常并没有一个友好的预定义的异常定义,此时在WHEN子句中无法使用具体的异常名称,必须要使用OTHERS异常处理器进行捕捉.通过EXCEPTION_ ...

  5. 一个关于传参数js数组的封装方法(寄生模式)

    function createArr(){ var arr = new Array(); arr.push.apply(arr,arguments); arr.toJoin = function(){ ...

  6. idea的项目中output框出现乱码

    找到tomcat的安装目录中的logging.properties 我的在这里:E:\tools\tomcat\apache-tomcat-8.5.38\conf 改其中的参数 修改前  java.u ...

  7. Unity 组件的增、查、禁、删 代码书写

    using UnityEngine; public class NewBehaviourScript : MonoBehaviour { // Use this for initialization ...

  8. 边框的使用,border-radius,box-shadow,border-image

    <html>    <head>        <meta charset="UTF-8">        <title></ ...

  9. 粘包解决高端_Client

    from socket import * #导入套接字模块的所有命令import struct #导入struck模块,用于封装数据流长度# from functools import partial ...

  10. Build rpm example:zram

    rpmbuild #ll zram-1.0.0 total 32 -rw-r--r-- 1 root root 948 Aug 21 16:44 Makefile -rw-r--r-- 1 root ...