PHP通过XML获取Alexa排名

很多时候,我们需要向网站的访客、广告商,特别是个体的潜在广告客户展示我们网站的排名、PR等信息,对于不愿意通过javascript去调用其他网站的站长来说,有比较快的一条捷径可以快速调用Alexa排名。

通过Alexa XML API 获取网站的Alexa相关的数据(XML格式的),再使用XML解析器来解析Alexa返回的XML,得到Alexa排名或其它的数据。

示例接口连接:http://data.alexa.com/data/?cli=10&url=http://zhuweisheng.com.cn

通过php查询xml特定的标签ALEXA>SD>POPULARITY>[TEXT]路径,获取匹配的数字,就是我们需要的Alexa排名数字了。

Alexa的XML API接口是:http://data.alexa.com/data?cli=10&url=这里填写你的域名

碎碎念度娘了很久,总算找到了这样的一段有效代码,输出的是纯粹的文字,不会带有后面的SOURCE="panel"这段令人心烦的小尾巴。

alexa

注:此段代码来源于网络,经验证可用,本文仅作记录。

实现代码

<span>Alexa排名:<?php
function getAlexaRank ($Domain){
$line = "";
$data = "";
$URL = "http://data.alexa.com/data/?cli=10&dat=snba&url=". $Domain ;
$fp = fopen ($URL ,"r");
if ($fp ){
while (!feof ($fp )){
$line = fgets ($fp );
$data .= $line ;
}
$p= xml_parser_create ();
xml_parse_into_struct ($p , $data , $vals );
xml_parser_free ($p );
for ($i =0 ;$i <count ($vals );$i ++){
if ($vals [$i ]["tag"]=="POPULARITY"){
return $vals [$i ]["attributes"]["TEXT"];
}
}
}
}
echo getAlexaRank("zhuweisheng.com.cn");
?>
</span>

参考来源:http://xiangtyee.com/archives/344.html

NOOLDEY

本文作者:NOOLDEY

做一个诗情画意的码农,皮皮猪,我们走!

原文链接: http://zhuweisheng.com.cn/wordpress/get-alexa-rank/

本站文章如无特殊声明均为原创,创作不易,转载请注明来源,谢谢!