Statuses/user timeline

跳转到: 导航, 搜索
(使用示例)
(添加demo 代码)
第138行: 第138行:
 
* json:
 
* json:
 
curl -u uid:password "http://api.t.sina.com.cn/statuses/user_timeline.json?screen_name=timyang&source=appkey"
 
curl -u uid:password "http://api.t.sina.com.cn/statuses/user_timeline.json?screen_name=timyang&source=appkey"
 +
 +
====Java示例====
 +
请从 [[SDK | 微博SDK开发包下载]] 下载Java SDK
 +
参看 examples/OauthUpload.java, 运行 java OauthUpload accesstoken accesstoken_secret filepath<br>
 +
代码示意如下:
 +
package weibo4j.examples;
 +
 +
import java.util.List;
 +
import weibo4j.Status;
 +
import weibo4j.Weibo;
 +
import weibo4j.WeiboException;
 +
 +
public class GetUserTimeline {
 +
/**
 +
* 获取用户发布的微博信息列表
 +
* @param args
 +
*/
 +
public static void main(String[] args) {
 +
System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
 +
System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
 +
try {
 +
//获取24小时内前20条用户的微博信息
 +
List<Status> statuses = getWeibo(true,args).getUserTimeline();
 +
for (Status status : statuses) {
 +
            System.out.println(status.getUser().getName() + ":" +
 +
                              status.getText());
 +
        }
 +
} catch (WeiboException e) {
 +
e.printStackTrace();
 +
}
 +
}
 +
 +
private static Weibo getWeibo(boolean isOauth,String[] args) {
 +
Weibo weibo = new Weibo();
 +
if(isOauth) {//oauth验证方式 args[0]:访问的token;args[1]:访问的密匙
 +
weibo.setToken(args[0], args[1]);
 +
}else {//用户登录方式
 +
      weibo.setUserId(args[0]);//用户名/ID
 +
    weibo.setPassword(args[1]);//密码
 +
}
 +
return weibo;
 +
}
 +
}

2010年6月29日 (二) 17:46的版本

目录

statuses/user_timeline

返回用户的发布的最近n条信息,和用户微博页面返回内容是一致的。此接口也可以请求其他用户的最新发表微博。

URL

http://api.t.sina.com.cn/statuses/user_timeline.format

格式

xml, json

HTTP请求方式

GET

是否需要登录

true

请求参数

  • id: 可选参数. 根据指定用户UID或微博昵称来返回微博信息。
o 示例: http://api.t.sina.com.cn/statuses/user_timeline/12345.xml
  • user_id: 可选参数. 用户UID,主要是用来区分用户UID跟微博昵称一样,产生歧义的时候,特别是在微博昵称为数字导致和用户Uid发生歧义。
o 示例: http://api.t.sina.com.cn/statuses/user_timeline.xml?user_id=1401881
  • screen_name:可选参数.微博昵称,主要是用来区分用户UID跟微博昵称一样,产生歧义的时候。
o 示例: http://api.t.sina.com.cn/statuses/user_timeline.xml?screen_name=101010
  • since_id:可选参数(微博信息ID). 只返回ID比since_id大(比since_id时间晚的)的微博信息内容
o 示例: http://api.t.sina.com.cn/statuses/user_timeline.xml?since_id=12345
  • max_id: 可选参数(微博信息ID). 返回ID不大于max_id的微博信息内容。
o 示例: Example: http://api.t.sina.com.cn/statuses/user_timeline.xml?max_id=54321
  • count: 可选参数. 每次返回的最大记录数,最多返回200条,默认20。
o 示例: http://api.t.sina.com.cn/statuses/user_timeline.xml?count=200
  • page: 可选参数. 分页返回。注意:最多返回200条分页内容。
o Example: http://api.t.sina.com.cn/statuses/user_timeline.xml?page=3

使用说明

  • 默认返回最近15天以内的微博信息
  • 由于分页限制,暂时最多只能返回用户最新的200条微博信息
  • 用户最多只能请求到最近200条记录

返回结果

XML示例:

<?xml version="1.0" encoding="UTF-8"?>
<statuses>
 <status>
   <created_at>Tue Dec 01 08:51:58 +0800 2009</created_at>
   <id>99999999</id>
   <text>只见AC米兰的巴蒂斯图塔突破马尔蒂尼,一脚凌空抽射,被裁判扑了出来。</text>
   <source>
     <a href="http://t.sina.com.cn">Web</a>
   </source>
   <favorited>false</favorited>
   <truncated>false</truncated>
   <in_reply_to_status_id></in_reply_to_status_id>
   <in_reply_to_user_id></in_reply_to_user_id>
   <in_reply_to_screen_name></in_reply_to_screen_name>
   <thumbnail_pic>http://static16.photo.sina.com.cn/thumbnail/62988d06tcbbc377f7bbf</thumbnail_pic>
   <bmiddle_pic>http://static16.photo.sina.com.cn/bmiddle/62988d06tcbbc377f7bbf</bmiddle_pic>
   <original_pic>http://static16.photo.sina.com.cn/orignal/62988d06tcbbc377f7bbf</original_pic>
   <user>
     <id>1141457724</id>
     <screen_name>1141457724</screen_name>
     <name>1141457724</name>
     <location>广州</location>
     <description>blog: timyang.net</description>
     <url>http://timyang.net</url>
     <profile_image_url>50#.jpg</profile_image_url>
     <followers_count>0</followers_count>
     <friends_count>0</friends_count>
     <statuses_count>0</statuses_count>
     <favourites_count>0</favourites_count>
     <following>false</following>
     <verified>true</verified>
   </user>
   <retweeted_status>
     <created_at>Tue Dec 01 08:51:58 +0800 2009</created_at>
     <id>100000000</id>
     <text>虽然渴者只要少许的水便够了,我却很快活地给与了我全部的水。</text>
     <source>
       <a href="http://t.sina.com.cn">Web</a>
     </source>
     <favorited>false</favorited>
     <truncated>false</truncated>
     <in_reply_to_status_id></in_reply_to_status_id>
     <in_reply_to_user_id></in_reply_to_user_id>
     <in_reply_to_screen_name></in_reply_to_screen_name>
     <user>
       <id>1337040644</id>
       <screen_name>1337040644</screen_name>
       <name>1337040644</name>
       <location>广州</location>
       <description>blog: timyang.net</description>
       <profile_image_url>50#.jpg</profile_image_url>
       <followers_count>0</followers_count>
       <friends_count>0</friends_count>
       <statuses_count>0</statuses_count>
       <favourites_count>0</favourites_count>
       <following>false</following>
       <verified>false</verified>
     </user>
   </retweeted_status>
 </status>
    ... truncated ...
</statuses>

JSON示例:

[
{"created_at":"Mon Dec 28 19:20:18 +0800 2009", "id":141654, "text":"aaaasdf", "source":"<a id=\"0\" href=\"http://t.sina.com.cn/\" rel=\"nofollow\">Web</a>", "favorited":false, "truncated":false, "in_reply_to_status_id":"", "in_reply_to_user_id":"", "in_reply_to_screen_name":"", "geo":null, "user":{"id":11075, "screen_name":"name_11075", "name":"name_11075", "province":0, "city":0, "location":"", "description":"", "url":"", "profile_image_url":"http://tp4.sinaimg.cn/11075/50/0", "domain":"11075", "followers_count":28, "friends_count":50, "statuses_count":0, "favourites_count":0, "created_at":"Thu Jan 01 08:00:00 +0800 1970", "following":false, "geo_enabled":false, "verified":true}
}, {},...
]

使用示例

需修改appkey

  • xml:

curl -u uid:password "http://api.t.sina.com.cn/statuses/user_timeline.xml?screen_name=timyang&source=appkey"

  • json:

curl -u uid:password "http://api.t.sina.com.cn/statuses/user_timeline.json?screen_name=timyang&source=appkey"

Java示例

请从 微博SDK开发包下载 下载Java SDK 参看 examples/OauthUpload.java, 运行 java OauthUpload accesstoken accesstoken_secret filepath
代码示意如下:

package weibo4j.examples;

import java.util.List;
import weibo4j.Status;
import weibo4j.Weibo;
import weibo4j.WeiboException;

public class GetUserTimeline {
	/**
	 * 获取用户发布的微博信息列表 
	 * @param args
	 */
	public static void main(String[] args) {
		System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY);
		System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET);
		try {
			//获取24小时内前20条用户的微博信息
			List<Status> statuses = getWeibo(true,args).getUserTimeline();
			for (Status status : statuses) {
	            System.out.println(status.getUser().getName() + ":" +
	                               status.getText());
	        }
		} catch (WeiboException e) {
			e.printStackTrace();
		}
	}
	
	private static Weibo getWeibo(boolean isOauth,String[] args) {
		Weibo weibo = new Weibo();
		if(isOauth) {//oauth验证方式 args[0]:访问的token;args[1]:访问的密匙
			weibo.setToken(args[0], args[1]);
		}else {//用户登录方式
     		weibo.setUserId(args[0]);//用户名/ID
    		weibo.setPassword(args[1]);//密码
		}
		return weibo;
	}
}