如果想要获取blogger博客的所有文章列表,可以使用如下的javascript脚本:
<div id="all_post_root">Loading ...</div>
<script type="text/javascript">
var entriesComparator = function(a, b) {
return a.link[2].title > b.link[2].title;
} //这个函数会把文章按标题进行排序,不太清楚对中文的排序是按什么机制来的
var displayFeed = function(response) {
var entries = response.feed.entry;
entries.sort(entriesComparator); //调用排序函数,注释掉此句则默认按时间顺序显示所有文章列表
var listUl = document.createElement("ul");
for (var i in entries) {
var elt = entries[i].link[2];
var a = document.createElement("a");
a.href = elt.href;
a.title = entries[i].published.$t;
a.appendChild(document.createTextNode(elt.title));
var li = document.createElement("li");
li.appendChild(a);
listUl.appendChild(li);
}
var allPostRoot = document.getElementById('all_post_root');
allPostRoot.innerHTML = "";
allPostRoot.appendChild(listUl);
};
</script>
<script src="/feeds/posts/default?alt=json&callback=displayFeed&max-results=99999">
</script> //可以看到,这里采用max-results=99999来尽可能的获取更多的文章,当然,如果你的博客文章大于这个数,那只需在这里指定一个远大于当前文章数的数值即可
如果想要按照label来获取文章列表,比如label名为Picutre,则最后一句应该修改为:
<script src="/feeds/posts/default/-/Picture?alt=json&callback=displayFeed&max-results=99999">
</script>
另外,是否计划替换标题中的某些公共部分呢?比如标题中都有"[一个问题]"(带方括号,不带双引号),则需要使用这句代码:
a.appendChild(document.createTextNode(elt.title.replace(/\[一个问题\] /, "")));
以上都是使用的javascript的知识,从博客的feed中获取内容