PHPはAlexa APIを使ってウェブサイトのAlexaランキングの例を取得します。

2023 ワード

私たちは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");
?>