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

我们通会用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=jb51.net返回的数据如下:

复制代码 代码如下:

<ALEXA VER="0.9" URL="jb51.net/" HOME="0" AID="ScELh1AI3f00az" IDN="jb51.net/">
<RLS PREFIX="http://" more="0"></RLS>
<SD TITLE="A" FLAGS="" HOST="jb51.net">
<LINKSIN NUM="1"/>
</SD>
<SD>
<POPULARITY URL="jb51.net/" 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("jb51.net");
?>

时间: 2024-09-19 20:55:50

PHP使用Alexa API获取网站的Alexa排名例子_php实例的相关文章

PHP URL参数获取方式的四种例子_php实例

在已知URL参数的情况下,我们可以根据自身情况采用$_GET来获取相应的参数信息($_GET['name']);那,在未知情况下如何获取到URL上的参数信息呢? 第一种.利用$_SERVER内置数组变量 相对较为原始的$_SERVER['QUERY_STRING']来获取,URL的参数,通常使用这个变量返回的会是类似这样的数据:name=tank&sex=1如果需要包含文件名的话可以使用$_SERVER["REQUEST_URI"](返回类似:/index.php?name=t

PHP获取音频文件的相关信息_php实例

项目需求:现在有一个音频文件上传的功能,在上传后PHP需要获取这个音频文件的相关信息,例如:时长等,由于这个文件是放在买的空间上的,没有像ffmpeg这样的扩展来处理,那么PHP能不能获取到这些信息? 下面是之前在项目中用到的一个用PHP进行音频文件头部信息的读取与写入操作的实现,主要针对 WMA 和 MP3 两种格式,供参考. <?php // AudioExif.class.php // 用PHP进行音频文件头部信息的读取与写入 // 目前只支持 WMA 和 MP3 两种格式, 只支持常用的

PHP通过微信跳转的Code参数获取用户的openid(关键代码)_php实例

关键代码如下所示: //获取微信登录用户信息 function getOpenID($appid,$appsecret,$code){ $url="https://api.weixin.qq.com/sns/oauth2/access_token?appid=".$appid."&secret=". $appsecret."&code=".$code."&grant_type=authorization_code

PHP中Restful api 错误提示返回值实现思路_php实例

RESTful架构是一种流行的互联网软件架构,它结构清晰,符合标准,易于理解,扩展方便. REST是Representational State Transfer的缩写,翻译为"表现层状态转化".表现层其实就是资源,因此可以理解为"资源状态转化". 网络应用上的任何实体都可以看作是一种资源,通过一个URI(统一资源定位符)指向它. 序言 不管是微博还是淘宝,他们都有自己的错误返回值格式规范,以及错误代码说明,这样不但手机端用起来方便,给人的感觉也清晰明了,高大上.遇

基于PHP CURL获取邮箱地址的详解_php实例

CURL可谓居家旅行必备之杀人良药,为何如此形容?就是因为他好用方便能实现页面抓取模拟登录采集等一系列功能.记得第一次接触CURL的时候是要实现完成从邮箱用户列表的抓取.当时为了赶进度没有细细研究只是网上找了一些资料实现了功能.现在把当初的代码整理一下功能依旧能用 复制代码 代码如下: <?php  error_reporting ( 0 );  set_time_limit ( 0 );  header ( "Content-Type: text/html; charset=GB2312

php防止网站被攻击的应急代码_php实例

前不久一个网站竟然被攻击,数据库被刷掉了,幸好客户机器上有数据库备份.遇到这么严重的问题,必须抓紧找出漏洞,防止再次被攻击.各方面检查之后发现除了服务器需要设置正确之外,其他无从下手,只好从ip地址上来解决这种攻击的问题. 如果发现某个ip访问网站太频繁了就加入到黑名单禁止访问,这不是一个很好的办法,但情急之下向不更好的解决方式,只是权宜之计,以后再进行深入的研究一下. 这个方法总结为一句话就是:通过禁止IP频繁访问防止网站被防攻击. <?php header('Content-type: te

PHP实现的网站目录扫描索引工具_php实例

代码很简单,这里就不多废话了,本代码来至一位网友的投稿,经测试可用 <?php error_reporting(E_ALL & ~E_NOTICE); ignore_user_abort(); set_time_limit(0); if ($_GET['act'] == 'op') { $data_url = $_GET['url'] . '/'; $hz = $_GET['type']; list($fw1, $fw2) = explode('-', $_GET['fw']); $zs40

php实现根据IP地址获取其所在省市的方法_php实例

根据现有IP地址获取其地理位置(省份,城市等)的方法 function GetIpLookup($ip = ''){ if(empty($ip)){ return '请输入IP地址'; } $res = @file_get_contents('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=' . $ip); if(empty($res)){ return false; } $jsonMatches = array(

orm获取关联表里的属性值_php实例

ORM--关系对象模型 对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换.从效果上说,它其实是创建了一个可在编程语言里使用的"虚拟对象数据库". laravel中的Eloquent ORM用于和数据表互动,其中每个数据库表会和一个对应的「模型」互动,想要了解请查看官方文档或自行百度.获取关联表里的属性值代码如下: /** * [getCont