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 相关文章推荐
一个简单的MySQL数据浏览器
Oct 09 PHP
如何在WIN2K下安装PHP4.04
Oct 09 PHP
php利用cookie实现访问次数统计代码
May 19 PHP
PHP 读取Postgresql中的数组
Apr 14 PHP
解析用PHP实现var_export的详细介绍
Jun 20 PHP
php对称加密算法示例
May 07 PHP
php从csv文件读取数据并输出到网页的方法
Mar 14 PHP
功能强大的PHP图片处理类(水印、透明度、旋转)
Oct 21 PHP
php+jquery+html实现点击不刷新加载更多的实例代码
Aug 12 PHP
Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解
Oct 13 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
Oct 30 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中apc缓存使用示例
2013/12/25 PHP
PHP扩展程序实现守护进程
2015/04/16 PHP
PHP递归实现汉诺塔问题的方法示例
2017/11/25 PHP
两个Javascript小tip资料
2010/11/23 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
详解js中常规日期格式处理、月历渲染和倒计时函数
2016/12/28 Javascript
JS中定位 position 的使用实例代码
2017/08/06 Javascript
详解搭建es6+devServer简单开发环境
2018/09/25 Javascript
小程序中canvas的drawImage方法参数使用详解
2019/07/04 Javascript
mock.js模拟前后台交互
2019/07/25 Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
2019/11/21 Javascript
Vue 实现简易多行滚动&quot;弹幕&quot;效果
2020/01/02 Javascript
HTML+JS实现“代码雨”效果源码(黑客帝国文字下落效果)
2020/03/17 Javascript
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
2020/04/07 Javascript
javascript设计模式 ? 职责链模式原理与用法实例分析
2020/04/16 Javascript
[06:30]DOTA2英雄梦之声_第15期_死亡先知
2014/06/21 DOTA
python中精确输出JSON浮点数的方法
2014/04/18 Python
Python实现的石头剪子布代码分享
2014/08/22 Python
python实现整数的二进制循环移位
2019/03/08 Python
python读取Excel表格文件的方法
2019/09/02 Python
python实现从wind导入数据
2019/12/03 Python
节日快乐! Python画一棵圣诞树送给你
2019/12/24 Python
python读取与处理netcdf数据方式
2020/02/14 Python
python文件操作seek()偏移量,读取指正到指定位置操作
2020/07/05 Python
Python实现一个简单的递归下降分析器
2020/08/01 Python
5分钟快速掌握Python定时任务框架的实现
2021/01/26 Python
CSS3教程(8):CSS3透明度指南
2009/04/02 HTML / CSS
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
DAWGS鞋官方网站:鞋,凉鞋,靴子
2016/10/04 全球购物
Expedia印度:您的一站式在线旅游网站
2017/08/24 全球购物
.NET常见笔试题集
2012/12/01 面试题
2015年元旦活动总结
2014/05/09 职场文书
贷款承诺书范文
2014/05/19 职场文书
行政执法作风整顿剖析材料
2014/10/11 职场文书
2014年电厂工作总结
2014/12/04 职场文书
搞笑欢迎词大全
2015/09/30 职场文书