PHP使用Alexa API获取网站的Alexa排名例子


Posted in PHP onJune 12, 2014

我们通会用Alexa的网站(或其它站长工具网站)来栓查我们的网​站流量排名,这样就必须去那些网站。实际上,可以通过Alexa XML API 获取网站的Alexa相关的数据(XML格式的),再使用XML解析器来解析Alexa返回的XML,得到Alexa排名或其它的数据。

Alexa接口

Alexa的XML API接口是:http://data.alexa.com/data?cli=10&url=%YOUR_URL%

如果想获取更多的数据可以用:http://data.alexa.com/data?cli=10&dat=snbamz&url=%YOUR_URL%

用http://data.alexa.com/data?cli=10&dat=snbamz&url=3water.com返回的数据如下:

<ALEXA VER="0.9" URL="3water.com/" HOME="0" AID="ScELh1AI3f00az" IDN="3water.com/">
<RLS PREFIX="http://" more="0"></RLS>
<SD TITLE="A" FLAGS="" HOST="3water.com">
<LINKSIN NUM="1"/>
</SD>
<SD>
<POPULARITY URL="3water.com/" TEXT="7552101" SOURCE="panel"/>
<REACH RANK="6342897"/>
</SD>
</ALEXA>

其中POPULARITY元素中的TEXT属性的值7552101就是Alexa排名。

代码实现:

用PHP实现通过Alexa API 获取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"];
  }
    }
      }
}
?>

使用方法:
<?php
    echo getAlexaRank("3water.com");
?>
PHP 相关文章推荐
PHP中GET变量的使用
Oct 09 PHP
PHP 输出简单动态WAP页面
Jun 09 PHP
PHP中对用户身份认证实现两种方法
Jun 04 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
Jun 03 PHP
php读取excel文件的简单实例
Aug 26 PHP
Thinkphp中的volist标签用法简介
Jun 18 PHP
PDO防注入原理分析以及注意事项
Feb 25 PHP
round robin权重轮循算法php实现代码
May 28 PHP
PHP基于GD库实现的生成图片缩略图函数示例
Jul 05 PHP
php 获取xml接口数据的处理方法
May 31 PHP
PHP实现二维数组中的查找算法小结
Jun 09 PHP
PHP操作Redis常用命令的实例详解
Dec 23 PHP
Codeigniter+PHPExcel实现导出数据到Excel文件
Jun 12 #PHP
Codeigniter生成Excel文档的简单方法
Jun 12 #PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
Jun 12 #PHP
让CodeIgniter数据库缓存自动过期的处理的方法
Jun 12 #PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
Jun 12 #PHP
CodeIgniter启用缓存和清除缓存的方法
Jun 12 #PHP
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定
Jun 12 #PHP
You might like
PHP操作数组相关函数
2011/02/03 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
2013/06/13 PHP
thinkPHP5.0框架环境变量配置方法
2017/03/17 PHP
php登录超时检测功能实例详解
2017/03/21 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
2014/05/05 Javascript
javascript中使用未定义变量或值的情况分析
2016/07/19 Javascript
jQuery如何封装输入框插件
2016/08/19 Javascript
Javascript中函数名.length属性用法分析(对比arguments.length)
2016/09/16 Javascript
使用nodejs爬取前程无忧前端技能排行
2017/05/06 NodeJs
详解微信小程序 通过控制CSS实现view隐藏与显示
2017/05/24 Javascript
JavaScript编程设计模式之构造器模式实例分析
2017/10/25 Javascript
js导出Excel表格超出26位英文字符的解决方法ES6
2017/11/15 Javascript
vue mounted 调用两次的完美解决办法
2018/10/29 Javascript
微信小程序实现打卡日历功能
2020/09/21 Javascript
详解vuex commit保存数据技巧
2018/12/25 Javascript
JS实现图片轮播效果实例详解【可自动和手动】
2019/04/04 Javascript
微信小程序的授权实现过程解析
2019/08/02 Javascript
通过javascript实现扫雷游戏代码实例
2020/02/09 Javascript
Python设计模式之装饰模式实例详解
2019/01/21 Python
python如何实现视频转代码视频
2019/06/17 Python
全球最大的户外用品零售商之一:The House
2018/06/12 全球购物
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
关于递归的一道.NET面试题
2013/05/12 面试题
竞争上岗演讲稿
2014/01/05 职场文书
安全口号大全
2014/06/21 职场文书
求职自我推荐信
2014/06/25 职场文书
庆六一宣传标语
2014/10/08 职场文书
2014大学班主任工作总结
2014/11/08 职场文书
面试复试通知单
2015/04/24 职场文书
北京青年观后感
2015/06/15 职场文书
重阳节主题班会
2015/08/17 职场文书
python实现简单石头剪刀布游戏
2021/10/24 Python
在js中修改html body的样式
2021/11/11 Javascript
python可视化大屏库big_screen示例详解
2021/11/23 Python
如何解决goland,idea全局搜索快捷键失效问题
2022/04/03 Golang