新浪微博开放平台api

合集下载

新浪微博API

新浪微博API

新浪微博API新浪微博API(android版)============================本版本在java版的基础上修改,使其可以在android sdk上使用.新增加了android的OAuth登陆认证及获取好友微博的实现样例.常用接口实例:(使用前先修改 Weibo.java 中public static final String CONSUMER_KEY = "";public static final String CONSUMER_SECRET = "";填写成实际申请的 CONSUMER_KEY 及 CONSUMER_SECRET)1、获取最新公共微博列表参考:weibo4j.examples.GetTimelines 中的getPublicTimeline()部分2、发表微博参考:weibo4j.examples.Update 中的updateStatus(...)部分3、发表评论参考:weibo4j.examples.Update 中的updateComment(...)部分4、删除评论参考:weibo4j.examples.Update 中的destroyComment(...)部分5、发送私人消息参考:weibo4j.examples.DirectMessage 类6、发表带图片的微博参考:weibo4j.examples.OAuthUploadByFile 中的uploadStatus(status,file)部分7、更新用户头像参考:weibo4j.examples.OAuthUpdateProfile类8、OAuth登陆认证参考: andriodexamples 的demo.====================================== ======================================= 其他接口在weibo4j.Weibo类中定义,调用方式请参考weibo4j.examples,下面是完整的接口列表:获取下行数据集(timeline)接口方法名:statuses/public_timeline 最新公共微博方法名:getPublicTimelinestatuses/friends_timeline 最新关注人微博(别名: statuses/home_timeline) 方法名:getFriendsTimeline statuses/user_timeline 用户发表微博列表方法名:getUserTimeline(String id, Paging paging)statuses/mentions 最新 @用户的方法名: getMentions()statuses/comments 单条评论列表(按微博) 方法名:getComments()微博访问接口statuses/show 获取单条方法名:showStatus(long id)statuses/update 发表微博方法名:updateStatus(String status) statuses/upload 发表微博及图片方法名:uploadStatus(String status,File file)statuses/destroy 删除方法名: destroyStatus(long statusId)statuses/comment 评论方法名:destroyComment(long commentId)statuses/comment_destroy 删除评论方法名:destroyComment私信接口direct_messages 我的私信列表方法名:getDirectMessages() 分页 getDirectMessages(Paging paging)direct_messages/sent 我发送的私信列表方法名:getSentDirectMessages()direct_messages/new 发送私信方法名:sendDirectMessage(String id,String text)direct_messages/destroy 删除一条私信方法名:destroyDirectMessage(int id)关注接口friendships/create 关注某用户方法名:createFriendship(String id)或 createFriendship(String id, boolean follow)friendships/destroy 取消关注方法名:destroyFriendship(String id)friendships/exists 是否关注某用户方法名:existsFriendship(String userA, String userB)friends/ids关注列表方法名: getFriendsIDs(long cursor)followers/ids 粉丝列表方法名:getFollowersIDs(long cursor) 账号接口account/verify_credentials 验证身份是否合法方法名:verifyCredentials()account/rate_limit_status 查看当前频率限制方法名:rateLimitStatus()account/update_profile_image 更改头像方法名:updateProfileImage(File image)account/update_profile 更改资料方法名:User updateProfile(String name, String email, String url, String location, String description)收藏接口favorites 收藏列表方法名:getFavorites()favorites/create 添加收藏方法名:createFavorite(long id)favorites/destroy 删除收藏方法名:destroyFavorite(long id)。

php获取新浪微博数据API的实例代码

php获取新浪微博数据API的实例代码

php获取新浪微博数据API的实例代码分享下php取得新浪微博数据API的一个例子,学习下在php编程中,使用新浪微博数据API进行开发的方法,感兴趣的朋友可以参考下。

php获取新浪微博数据API要取得新浪微博的数据,可以通过其提供的API,地址:open.weibo/wiki/API文档_V2。

获取数据的方法:复制代码代码示例:<?php/***通过新浪微博数据API取得微博数据*edit:jbxue*/functiongetWeiboData(){$count=15;//参数source后面输入你的授权号$url="api.weibo/2/statuses/home_timeline.json?source=12 3456789&count=".$count."&page=1";echo$url.'<br/>';$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$url);//设置是否显示header信息0是不显示,1是显示默认为0//curl_setopt($curl,CURLOPT_HEADER,0);//设置cURL参数,要求结果保存到字符串中还是输出到屏幕上。

0显示在屏幕上,1不显示在屏幕上,默认为0curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);//要验*的用户名密码curl_setopt($curl,CURLOPT_USERPWD,"username:password" );$data=curl_exec($curl);curl_close($curl);$result=json_decode($data,true);echo'<pre>';print_r($result);echo'</pre>';}>说明:json_decode($data)会输出一个对象,而json_decode($data,true)则强制输出为数组。

微博数据获取方法

微博数据获取方法

微博数据获取方法
要获取微博数据,可以通过以下几种方法:
1. 使用微博的开放平台API:微博提供了一系列的接口,可以通过API获取用户个人信息、用户的微博内容、用户的关注关系等数据。

你可以从微博开放平台申请开发者账号,并获取API的访问权限,然后使用相应的API进行数据获取。

2. 使用爬虫工具:你可以使用网络爬虫工具,如Python的Scrapy框架或BeautifulSoup库,来爬取微博网页的内容。

通过分析微博网页的结构,可以提取需要的数据,如用户的微博内容、用户的关注列表等。

3. 使用第三方微博数据采集工具:市面上有一些第三方工具可以帮助你采集微博数据,这些工具通常提供了简化的操作界面,可以帮助你方便地设置爬取的范围和条件,并提供自动化的数据采集功能。

无论使用哪种方法,都需要注意遵守微博的使用条款和开放平台的规定,确保数据获取的合法性和合规性。

此外,由于微博的页面结构和API接口可能会有变动,你还需要及时跟踪微博的更新和调整,以确保数据获取的稳定性和准确性。

新浪微博开放平台

新浪微博开放平台

简介新浪微博开放平台的体系参考了Twitter,两者非常类似,包括接口、参数的定义,请求方式等等,如果熟悉Twitter的API,基本可以同样的适用到新浪微博开放平台上,同时此文档技术部分的信息也可以同样适用于Twitter。

新浪微博开放平台的网站为/,目前只部分页面对匿名用户开放。

新浪微博开放平台的官方微博为/openapi,可以在此申请API试用权限。

注册在开放平台登录后可以看到的界面如下所示:可以选择创建一个应用,需要设置应用名称、应用地址等。

创建后可以在“我的应用”菜单里看到该应用和使用用户数,系统会为此应用分配一个APP KEY和APP SECRET,这两个字串非常重要,将会在以后认证或者信息交互时用到。

某应用的详细信息页面应用分为多个授权级别,分别为普通授权、中级授权、高级授权、合作伙伴授权,可以在/wiki/index.php/Rate-limiting这里看到详细的权限信息。

使用合作伙伴授权是没有请求限制的,而普通授权可能一不小心就会Server Limit了。

认证开放平台有两种认证方式,一种是Basic Auth,一种是OAuth。

1、Basic Auth(HTTP Auth)Basic Auth简单点说明就是每次请求API时都提供用户的username和passw ord。

例如:“curl -u user:password -d "source=10001&status=api test" . cn/update.xml”。

这种方式优点和缺点都很明显。

优点:◆使用非常简单,◆开发和调试工作简单,◆没有复杂的页面跳转逻辑和交互过程;◆更利于发起方控制;缺点:◆安全性低,每次都需要传递用户名和密码,用户名和密码很大程度上存在被监听盗取的可能;◆同时应用本地还需要保存用户名和密码,在应用本身的安全性来说,也存在很大问题;◆开放平台服务商出于自身安全性的考虑(第三方可以得到该服务商用户的账号密码,对于服务商来说是一种安全隐患),未来也会限制此认证方式(Twitter就计划在6月份停止Basic Auth的支持)◆用户如果更改了用户名和密码,还需要重新进行密码校验的过程。

NET调用新浪微博开放平台发送微博

NET调用新浪微博开放平台发送微博

.NET调用新浪微博开放平台发送微博1. 首先我们要获取一个App Key,在新浪微博开放平台的“我的应用”中创建一个应用,就会生成App Key,假设是123456。

2. 在新浪微博API文档中找到你想调用的API,这里我们假定调用发表微博的API-statuses/update,url是/statuses/update.json,POST 的参数:source=appkey&status=微博内容。

其中appkey就是之前获取的App Key。

3. 准备数据1) 准备用户验证数据:(用来登录并授权)string username = "t@";string password = "";string usernamePassword = username + ":" + password;username是你的微博登录用户名,password是你的博客密码。

2) 准备调用的URL及需要POST的数据:string url = "/statuses/update.json";string news_title = "美丽景色";int news_id = 62747;string t_news = string.Format("{0},/n/{1}/", news_title, news_id);string data = "source=123456&status=" + System.Web.HttpUtility.UrlE ncode(t_news);4. 准备用于发起请求的HttpWebRequest对象:.WebRequest webRequest = .WebRequest.Create(ur l);.HttpWebRequest httpRequest = webRequest as .H ttpWebRequest;5. 准备用于用户验证的凭据:.CredentialCache myCache = new .CredentialCach e();myCache.Add(new Uri(url), "Basic", new workCredential(username, password));httpRequest.Credentials = myCache;httpRequest.Headers.Add("Authorization", "Basic " +Convert.ToBase64String(new System.Text.ASCIIEncoding().GetBytes(usern amePassword)));6. 发起POST请求:httpRequest.Method = "POST";httpRequest.ContentType = "application/x-www-form-urlencoded";System.Text.Encoding encoding = System.Text.Encoding.ASCII;byte[] bytesToPost = encoding.GetBytes(data);httpRequest.ContentLength = bytesToPost.Length;System.IO.Stream requestStream = httpRequest.GetRequestStream(); requestStream.Write(bytesToPost, 0, bytesToPost.Length);requestStream.Close();上述代码成功执行后,就会把内容发到了你的微博上了。

新浪微博移动应用授权机制(@疯子超人)

新浪微博移动应用授权机制(@疯子超人)

新浪微博-手机微博 @疯子超人@MUNTO_AKIRA新浪微博移动应用开发指南——授权机制说明•在/apps中应用创建成功后,将会获得该应用的App Key和Secret Key,您可以通过这两个Key数据开始进行相关的技术开发工作。

•App Key是应用的唯一标识,开放平台通过App Key来鉴别应用的身份。

AppSecret是给应用分配的密钥,开发者需要妥善保存这个密钥,这个密钥用来保证应用来源的的可靠性,防止被伪造。

•Oauth2的授权方式需要校验callback地址,因此也需要开发者在后台配置。

微博应用授权流程第三方应用OAuth2.0认证获取AccessToken操作接口访问信息移动端授权:授权方式:目前新浪微博开放平台仅支持OAuth2.0的用户身份鉴权。

跳转新浪授权页面 Webview 截取SDK SSO 版SDK Oauth2.0 API 跳转微博客户端授权微博客户端3.0 开放服务 可实现方式OAuth2 APIOAuth2/authorize请求用户授权Token●用于标准流程( Authorization Code),发送获取code请求。

●用户直接发放模式( Implicit Grant),直接获取token。

需要校验callback地址。

OAuth2/access_token获取授权过的Access Token●用于已经获得用户授权得到code后换取token●使用客户端认证权限对授权过的用户直接获得用户token。

access_token以2.00开头expires_in以秒为单位用户App API Server6. 请求获得token :https:///oauth 2/access_token 1.用户确认使用微博功能2.发起接口调用请求https:///oauth2/authorize5. 返回code4. 用户授权3. API 返回授权页面 7. 返回tokenStep 1:client_id=2507226428&response_type=code&redirect_uri=https:///oauth2/default.html &display=mobile &with_offical_account=1https:///oauth2/authorize GET/POSTStep 2:https:///oauth2/default.html?code=8502231b847e512ceed1d1c891c00293Step 3:https:///oauth2/access_token POSTclient_id=2507226428&client_secret=16ee5f1933580ff73863010272ec065b&grant_type=authorization_code&code=8502231b847e512ceed1d1c891c00293&redirect_uri=http s:///oauth2/default.htmlaccess_token": "ACCESS_TOKEN", "expires_in": 1234, "remind_in":"798114", "uid":"12341234" }request:Redirect_URI 需先在后台配置或使用绑定域名下的有效地址。

Android授权登录新浪微博获取用户个人信息汇总

Android授权登录新浪微博获取用户个人信息汇总

Android授权登录新浪微博获取用户个人信息一、准备工作我们都知道,无论是分享到新浪微博,还是获取新浪微博的用户信息,都离不开一样东西,那就是新浪微博的APPID,APPID通过绑定我们应用程序的包名和签名进行识别,可以说它是我们跟新浪微博官方所提供接口进行交互的一个重要令牌,这一点跟QQ、微信接口等访问原理基本是一样的。

那么问题来了,APPID到底怎么得到?答案就是你要到新浪微博开放平台/注册一个帐号,填写并创建你的应用。

如下图所示:点击创建应用后会出现如下图所示页面,在这个页面中你必须要填写你的Android包名和Android签名,包名就是你应用程序AndroidManifest.xml文件中的package中的字符串,比如你新建了一个名称为“test”的项目,那么你的包名应该是com.example.test了。

至于Android 签名,你可以在该开放平台下载签名工具apk装到手机,然后打开该apk填写程序包名获取签名,也可以直接在开发工具eclispe中点击Window->Preferences->Android->Build查看,如下图所示,至于其它必要的填写信息,你自己去完善就可以了将所有信息填写完善后我们点击提交审核,注意,只有审核通过的应用才能调用他们提供的API。

二、工程准备新建一个工程,包名要跟你上面填写的包名一致。

新建完成后下载新浪微博SDK,下载完成后解压,将libs目录下的文件全部拷贝到你的工程libs目录下,将weiboSDKCore_3.1.2.jar 包也拷贝到libs目录下,找到AccessTokenKeeper.Java、UsersAPI.java、AbsOpenAPI.java文件并拷贝到你的包中,我把我的工程目录图贴出来,后面我会把整个示例源码放上来。

注意上面common中的SinaUserInfo.java是我自己建的,只是用来方便存和取用户信息而已。

新浪接口API调用

新浪接口API调用

新浪接口API调用新浪API2.0调用痕迹最近本人研究怎么调用新浪的接口。

一开始由于感觉时间的仓促就从网上找了个实例。

哪知道在模拟授权成功了以后进行接口的调用的时候才知道知道。

人家验证是OAuth1.0认证。

而现在新浪接口是1.0的。

老是调用的时候报Http403 五位码表示access_token无效。

这样一来我都弄疯了,连续折腾了3天,我都太折腾疯了。

总结一句话哥太心急了。

搞了半天就是找错。

问人。

折腾了半天。

没有啥人能帮上忙。

所以我就下定决心研究别人代码。

通过我晚上苦苦的研究终于弄清楚了点思路了。

第二天早上一起来灵感移动。

其实真的他妈那么简单啊。

下面我就给大家介绍我的实现思路。

当然我也借助了别人写的SDK.加以我的改变生产了dll文件。

提供后续开发这学习。

我提供下载地址。

希望能给苦命的程序员又所帮助。

尤其是像我这样的菜鸟。

老鸟当然不需要这些的。

废话都不说了。

下面就介绍下实现思路吧。

1首先我介绍下OAuth授权的内部原理:A:客户端从服务器端获取一个没有经过授权的tonken(一个32位的字符串)B:用户从客户端获取一个验证编号。

C:客户端向服务器端获取一个成功的授权编号现在也不说这些内部原理了:直接阐述代码吧。

const long clientID = 1253617897;//申|¨o请?的ì?app_key//获取程序keyconst string responseType = "authorization_code";//这个值好像可以起好多的。

集体是代表什么我还是希望别人多多参考新浪APIconst string redirectUri = "http://localhost:1978/sina/URLredirection.aspx";//回?调ì??地ì?址?¤这个回调地址是设置在新浪申请的应该平台里面的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用java开发新浪微博的API
首先先注册新浪微博(如果有了的可以直接登录)
在进入新浪微博的开放平台下载SDK 下载最新的SDK /wiki/SDK
然后把SDK 导入到MyEclipse 里
接着在进入新浪微博的开放平台点击我要成为开发者
注册
1.填写开发者资料
2.验证邮箱
3.创建应用/添加网站
点击创建应用
有5种应用
选择站内应用然后把信息填完点击创建
成功后在应用基本信息里就会显示App Key 和App Secret
再接着往下看会看到
站内应用地址和应用实际地址记住填写的内容
回到MyEclipse在src下面找到config.properties
填写
client_ID =App Key
client_SERCRET =App Secret
redirect_URI =应用实际地址(也可以不写我就没有写)
保存
接着就是写一条获取微博的前20条信息
在examples 下的weibo4j.examples.oauth2下的OAuth4Code下直接运行(如果报错把
改成

,就会出现授权页面,登录,登录成功后,点击授权查看网址后面有个code=XXXX
把code=后面的XXXX复制到MyEclipse 的控制台中的https:///oauth2/authorize?client_id=1682103644&redir ect_uri=/boyaboya&response_type=code&state=& scope=
Hit enter when it's done.[Enter]:后面
然后按回车就会输出一大堆消息直接跳到最后会看到
记住"access_token" 后面的值就是是我们要用到的值了记录下来
下面开始获取微博最新的前20条信息喽
weibo4j.examples.timeline 下的 GetPublicTimeline 类中
代码如下
package weibo4j.examples.timeline;
import java.util.List;
import weibo4j.Timeline;
import weibo4j.Weibo;
import weibo4j.examples.oauth2.Log;
import weibo4j.model.PostParameter;
import weibo4j.model.Status;
import weibo4j.model.StatusWapper;
import weibo4j.model.WeiboException;
import weibo4j.util.WeiboConfig;
public class GetPublicTimeline {
/**
*获取最新更新的公共微博消息
*@param args
*/
public static void main(String[] args) {
String access_token = "2.00zd8kXCwzvppB3d7bd9a1722AINVD";
Weibo weibo=new Weibo();
weibo.setToken(access_token);
Timeline tm = new Timeline();
tm.client.setToken(access_token);
try {
StatusWapper status = tm.getPublicTimeline();
for(Status s : status.getStatuses()){
Log.logInfo(s.toString());
}
System.out.println(status.getNextCursor());
System.out.println(status.getPreviousCursor());
System.out.println(status.getTotalNumber());
System.out.println(status.getHasvisible());
} catch (WeiboException e) {
e.printStackTrace();
}
}
}
写完直接运行在控制台中就会直接输出最新的的前20条微博了。

相关文档
最新文档