使用新浪微博开放平台api同步微博内容至自己网站(如何获取AccessToken以及如何使用新浪微博API的使用方式)
优采云 发布时间: 2022-02-05 20:16使用新浪微博开放平台api同步微博内容至自己网站(如何获取AccessToken以及如何使用新浪微博API的使用方式)
因为毕业项目需要用到微博数据采集,所以获取微博数据的方式主要有两种:基于官方API和基于网络爬虫。让我们看看这些天如何使用官方API。比较麻烦的是oauth2的验证,今天看到一个帖子,实践了一下API的使用方法,转载过来看看。
转载至:
使用新浪微博API的前提是在新浪微博开放平台上注册一个应用,获取App Key和App Secret,然后根据这两个获取Access Token。下面详细介绍如何获取Access Token以及如何使用新浪微博提供的API。
一、获取访问令牌
1、进入新浪微博开放平台,进入应用开发,选择创建应用,这里我选择“web应用”
2、填写申请的基本信息
随便填什么,点击“创建”,就可以创建成功了!
创建成功后,可以查看应用信息。您需要的主要是 App Key 和 App Secret。
3、添加授权回调页面
选择刚刚创建的应用,进入应用信息,选择高级信息,添加授权回调页面。
这必须添加。如果回调页面没有被授权,则无法获取Access Token,必须保证回调页面的URL是可访问的。
4、获取新浪微博SDK包
在新浪微博开放平台,选择文档->资源下载->SDK下载,我选择JavaSDK的版本。下载完成后,解压并将项目导入Eclipse。
可以查看文档:readme.txt,内容为:
[清楚的]
请先填写相关配置:在Config.properties中client_ID:a*敏*感*词*ey client_SERCRET:app_secret redirect_URI:回调地址
即需要配置运行项目的前提。
5、配置SDK开发包
打开 Config.properties 文件(在 src 目录中)
[清楚的]
client_ID= client_SERCRET= redirect_URI= baseURL= accessTokenURL= authorizeURL= rmURL=
您需要填写client_ID、client_SERCRET、redirect_URI,这些必须与您的应用程序相对应。格式与以下相同。不要放双引号,不要在末尾放分号。
6、获取访问令牌
打开示例资源文件夹,weibo4j.examples.oauth2文件夹中的OAuth4Code.java
放上代码:
[清楚的]
BareBonesBrowserLaunch.openURL(oauth.authorize("code",args[1],args[2])); System.out.println(oauth.authorize("code",args[1],args[2]));
变成:
[清楚的]
BareBonesBrowserLaunch.openURL(oauth.authorize("code","","")); System.out.println(oauth.authorize("code","",""));
即删除 args 参数。
然后选择run as Java Application,打开浏览器,也就是打开你填写的回调地址,注意此时的url,最后一部分是code=XXXXXXXXXXXXXXXXXXXXX。复制此代码的值。查看 Eclipse 的控制台窗口:
输入您刚刚获得的代码值,然后按 Enter。
至此,您已经获得了access_token值和uid值,现在可以使用access_token运行示例中的程序了。注意access_token的取值有一定的时效性。access_token过期后需要重新申请,即重复第6步,access_token的值不会每次都改变。
二、运行示例程序
我在weibo4j.examples.timeline中选择了ShowStatus.java。将access_token替换为刚刚获取的值,id指的是微博的ID,运行它,可以得到微博的信息和用户的信息。注意这里的第二个参数id,必须是具体微博的id,而不是uid!!!
其他程序也是如此。