使用标记名从Tumblr获取所有帖子的java代码
我尝试使用标签从Tumblr获取帖子使用标记名从Tumblr获取所有帖子的java代码,java,tags,fetch,tumblr,Java,Tags,Fetch,Tumblr,我尝试使用标签从Tumblr获取帖子 http://api.tumblr.com/v2/tagged?tag=hadoop&api_key=***** 我可以编写HTTP客户机,并可以获得json和相应的解析。但是我想知道一些信息,比如任何支持的TumblrJavaAPI来访问这个 我尝试了com.tumblr.jumblr.JumblrClient,但没有找到任何支持此要求的方法。有人能给我提些建议吗。如果我查看github中的jumblClient.java,我可以看到一个方法:
http://api.tumblr.com/v2/tagged?tag=hadoop&api_key=*****
我可以编写HTTP客户机,并可以获得json和相应的解析。但是我想知道一些信息,比如任何支持的TumblrJavaAPI来访问这个
我尝试了
com.tumblr.jumblr.JumblrClient
,但没有找到任何支持此要求的方法。有人能给我提些建议吗。如果我查看github中的jumblClient.java,我可以看到一个方法:
/**
* Tagged posts
* @param tag the tag to search
* @param options the options for the call (or null)
* @return a list of posts
*/
public List<Post> tagged(String tag, Map<String, ?> options) {
if (options == null) {
options = Collections.emptyMap();
}
Map<String, Object> soptions = JumblrClient.safeOptionMap(options);
soptions.put("api_key", apiKey);
soptions.put("tag", tag);
return requestBuilder.get("/tagged", soptions).getTaggedPosts();
}
/**
*标杆
*@param标记要搜索的标记
*@param options调用的选项(或null)
*@返回帖子列表
*/
已标记的公共列表(字符串标记、地图选项){
如果(选项==null){
options=Collections.emptyMap();
}
Map soptions=JumblrClient.safeOptionMap(选项);
soptions.put(“api_键”,apiKey);
放置(“标签”,标签);
返回requestBuilder.get(“/taged”,soptions).getTaggedPosts();
}
基于文档,它应该正是您所需要的。它实际上构建了与您在问题中提到的相同的请求
编辑:
根据TumblrAPI文档,不可能要求超过20篇文章
限制-要返回的结果数:1–20,包括
我找到了
public List<Post> fetchPostsByTag(JumblrClient client, String tagName, long timestamp) {
if (client == null || tagName == null || tagName.isEmpty()) {
return null;
}
Map<String, String> options = new HashMap<String, String>();
if (timestamp != 0) {
options.put("before", timestamp + "");
}
List<Post> posts = client.tagged(tagName, options);
return posts;
}
public List fetchPostsByTag(JumblClient客户端,字符串标记名,长时间戳){
if(client==null | |标记名==null | |标记名.isEmpty()){
返回null;
}
Map options=newhashmap();
如果(时间戳!=0){
期权。看跌期权(“之前”,时间戳+”);
}
List posts=client.taged(标记名,选项);
返回岗位;
}
这个代码是为我工作的。。现在,我得到了20多个帖子使用标签
感谢Reins的支持。感谢您提供的信息。但根据我传递给这个方法的标签,我只得到了前20名的帖子。这是预期的行为。Tumblr API将限制定义为1-20