显示 FeedSky,FeedBurner,Google Feed 的文本统计数字的方法

* Internet / # , , , , , / 2009年01月23日 / 37条评论 / 92 次浏览

有些时候,为了页面的样式,或许你需要显示 FeedSky,FeedBurner,Google Feed 的文本统计数字。如何实现呢?其实我们可以利用强大的 API 调用 RSS 托管商的文本统计数字

FeedSky

Shawn 童鞋已经提供了显示 FeedSky 的文本统计数字的方法(原文地址),相关代码如下(把代码中的 feedsky-id 改为你的 Feed@FeedSky 的名称):

1
2
3
4
5
<?php 
$xml = simplexml_load_file('http://www.feedsky.com/rpc/feed_statistic_xml.php?u=feedsky-id');
$node = $xml->xpath('/month/day[last()]');
foreach($node as $n){echo $n['subcount'];}
?>位读者

FeedBurner

这个方法是 NetPuter 参考 Shawn 的方法实现的,算是准原创吧。其中 API 的地址是在这里发现的,相关代码如下(同样,把代码中的 feedburner-id 改为你的 Feed@FeedBurner 的名称):

1
2
3
4
5
<?php 
$xml = simplexml_load_file('http://api.feedburner.com/awareness/1.0/GetFeedData?uri=feedburner-id');
$node = $xml->xpath('/rsp/feed/entry');
foreach($node as $n){echo $n['circulation'];}
?> Readers

Google Feed

由于 FeedBurner 已被 Google 收购,因此调用方法也差不多,代码如下(还是,把代码中的 googlefeed-id 改为你的 Feed@FeedBurner 的名称):

1
2
3
4
5
<?php 
$xml = simplexml_load_file('https://feedburner.google.com/api/awareness/1.0/GetFeedData?uri=googlefeed-id');
$node = $xml->xpath('/rsp/feed/entry');
foreach($node as $n){echo $n['circulation'];}
?> Readers

最终效果以及相关注意

因为 OrzDream 是由 FeedSky 托管的,也有由 FeedBurner 托管的,但是几乎没有数字,所以借用一下 WPChina.org精品博客的订阅统计。
图像版:

截止至昨天, OrzDream 已经有
WPChina.org 有
精品博客有

文本版:

截止至昨天, OrzDream 已经有xpath('/month/day[last()]');foreach($node as $n){echo $n['subcount'];} ?>位读者, WPChina.org 有 $xml = simplexml_load_file('http://api.feedburner.com/awareness/1.0/GetFeedData?uri=wordpresschina');$node = $xml->xpath('/rsp/feed/entry');foreach($node as $n){echo $n['circulation'];} ?> Readers ,精品博客有xpath('/rsp/feed/entry');foreach($node as $n){echo $n['circulation'];} ?> Readers 。

几点注意:

  1. 建议大家在使用代码的时候 Cache 一下,帮助 RSS 托管商和地球节省资源。有关 Cache 可以参考 WordPress 官方 Codex 的详细内容
  2. 关于显示 FeedBurner,Google Feed 的文本统计数字的方法中,用到 SimpleXMLElements 这个玩意儿,它生存在 PHP5 环境中。如果你的 Blog 还是生存在 PHP4 环境的话,就无法使用以上显示 FeedBurner,Google Feed 的文本统计数字了。
  3. 不知道为什么,精品博客的订阅统计图标和文本有很大出入。此外, FeedSky 和 FeedBurner 也是图标和文本有出入(但是不大),我想应该是因为图标是一天更新一次,而 API 是即时更新的吧(可以看看它们的 API 的内容),你觉得呢?

PS1:一开始我是用 HONGKIAT.COM 的方法显示 FeedBurner,Google Feed 的文本统计数字的,但发现不可行。后来在和 Leeiio 的扯淡过程中突发灵感,其结果也就是上文的内容啦。折腾成功的感觉真
PS2:参考资料:《PHP 中的 SimpleXML 处理

欢迎订阅 OrzDream ,也欢迎关注我的 Twitter @NetPuter ~ :-)
分享这篇文章 或者围观评论 或者直接发表评论
Notify
Leeiio 发表于 2009-01-23 23:48

其實我搶沙發是有技術的,就是先在文本裡面打好字然後複製粘貼...NetPuter是個愛折騰的好孩子。用api或許文本比圖片生成的及時多了。獎勵小紅花一朵,積滿五朵將贏得我樓下的獻吻一個~

Notify
NetPuter 发表于 2009-01-23 23:50

@Leeiio, 真的非常3Q你陪我扯淡!

Notify
任平生 发表于 2009-01-23 23:52

提供的参考资料很不错 :P

Notify
NetPuter 发表于 2009-01-23 23:54

@任平生, 我觉得"IBM developerWorks 中国"有很多超有价值的东西,值得订阅!

Notify
wangyh 发表于 2009-01-24 11:40

题外话:春节快乐~,作业写完了没?

Notify
slyar 发表于 2009-01-24 12:49

恩恩,这样看起来舒服多了...

Notify
篮球博客 发表于 2009-01-24 14:52

很好,学到东西了!春节快乐啊!

Notify
老N 发表于 2009-01-24 18:10

很有用的调用!
我是来恭祝你新入黑莓的~~呵呵

Notify
醉倚西风 发表于 2009-01-24 19:00

你丫比我牛X

Notify
康爷 发表于 2009-01-24 19:38

蛮有用的

Notify
xiaorsz 发表于 2009-01-24 21:45

总结的不错,呵呵!!话说前几天我也搞写下的,就是太冷了!!呵呵!!

Notify
NetPuter 发表于 2009-01-25 11:08

@老N, 谢谢,正折腾着呢~

Notify
NetPuter 发表于 2009-01-25 11:14

@wangyh, 当然是!没啦..

Notify
HuangJ.in 发表于 2009-01-25 15:55

新年快乐!

Notify
NetPuter 发表于 2009-01-25 17:16

@HuangJ.in, You,too..

Notify
贝壳 发表于 2009-01-25 19:54

啊`这个不错 学习

Notify
Dianso 发表于 2009-01-25 23:41

新年快乐 :razz: !

Notify
闫小彬 发表于 2009-01-26 00:16

新年快乐哇!Happy 牛 Year~~!

Notify
leehow 发表于 2009-01-26 09:49

牛年好,所以还是要好好统计你做了多少寒假作业...

Notify
NetPuter 发表于 2009-01-26 13:10

@Dianso, 谢谢,你是 OrzDream 在鼠年最后一条留言哦,Happy 牛 Year。

Notify
NetPuter 发表于 2009-01-26 13:11

@闫小彬, 谢谢,你是 OrzDream 在牛年第一条留言哦,Happy 牛 Year。

Notify
NetPuter 发表于 2009-01-26 13:11

@leehow, - -,几乎没动。。

Notify
leehow 发表于 2009-01-27 08:14

@NetPuter, 完全没关系,想当年我也是假日结束前两天“做”完的。

Notify
醉倚西风 发表于 2009-01-27 09:21

新年好啊 新年好啊
祝福西风新年好

Notify
NetPuter 发表于 2009-01-27 14:59

@醉倚西风, 嗯哈,You TOO。

Notify
Mao 发表于 2009-01-27 21:42

不错..技术文章..收藏了

Notify
Sayisee 发表于 2009-01-28 12:00

过年了!
祝博主牛年心想事成,吉祥如意,合家欢乐!

Notify
NetPuter 发表于 2009-01-28 19:28

@Sayisee, THX,You TOO。

Notify
KOM 发表于 2009-01-28 22:15

博主,中国新年好!
P/S:我换米了,请将“和意博客”更新下:
名称:和谐山寨
玉米:GFWed.com
谢谢!^_^

Notify
NetPuter 发表于 2009-01-29 17:14

@KOM, 貌似原来都米有你的链接的说。。

Notify
bwskyer 发表于 2009-02-01 12:37

我一直调用的是图片, 懒得去研究代码..

Notify
会律博客 发表于 2009-02-01 19:38

哇,回家了几天,今天才跟上大众的步伐!

Notify
feicun 发表于 2009-02-05 23:01

目前还不好意思让订阅人数显示出来……

Notify
rex 发表于 2009-02-12 13:40

不错的应用。无论是xpath的方式,还是正则表达式的方式,都是以特定的格式析取关键内容。

Notify
NetPuter 发表于 2009-02-12 14:06

@rex, 谢谢。自从发现了这个,感觉做一个 feed.php?f= Feed 地址 的页面很简单。

Notify
小毅 发表于 2009-04-19 20:52

那个feedsky的统计数图标比官方的好看