無料でAlexaのトラフィックデータを取得できるAPI(ドキュメント無し)


※当ブログではアフィリエイト広告を利用しています。

Alexaというサイトでは自分のドメインが世界で何番目のトラフィック(アクセス量)であるかを調べることができます。しかし毎回Webサイトで調べるのは手間がかかり、公式APIは用意されているものの残念ながら有料です。

そこで無料でトラフィックランクが取得できないか調べてみたところ、ドキュメントに載っていないAPIがあるようなのでメモします。

Alexaとは

AlexaはAmazon傘下のアメリカのインターネット関連企業です。世界中のウェブサイトのトラフィックを調査しており、公式サイトでは調べたいURLを打ち込むと、毎日のトラフィックランクや直帰率、訪問別PV数等を表示してくれます。

参考までに以下は当サイト(ドメイン)のトラフィックランク情報です。ランクは世界で約45万番目のようです。
Lancork Alexa Overview

以下はWikipediaから引用したAlexaの概要です。

事業内容は、ウェブ巡回技術を使ってウェブサイト情報や利用状況に関するデータを集め、ウェブサイトがどれだけの人に見られているかを調査すること。alexa.comでは、ドメインのアクセス量(トラフィック)や訪問者数、1回の訪問あたりの閲覧ページ数などを表示できる。また、Alexa InternetはWayback Machineのデータ提供元でもある。

有料のAlexa公式API

公式APIはAWS(Amazon Web Service)でAlexa Web Information Service(AWIS)という名前で提供されています。

しかし無料では使えず、非常に安い金額ですが1リクエストごとに$0.00015かかります。2014年7月31日現在の値段だと1,000リクエストあたり約16円です。

無料で使えるAlexa API(ドキュメント無し)

無料でAlexaランクを取得する方法がないか調べてみたところ、Stack Overflowで同じ質問をしている人がいました。その回答に、無料APIはAlexa公式サイトで提供されているもののドキュメントがどこにも無い旨が記載されていました。

There is a free API (though I haven’t been able to find any documentation for it anywhere).
http://data.alexa.com/data?cli=10&url=%YOUR_URL%
You can also query for more data the following way:
http://data.alexa.com/data?cli=10&dat=snbamz&url=%YOUR_URL%

Alexaの無料APIの使い方

以下のURLの%YOUR_URL%の部分にAlexaデータを調べたいURLを入れます。

http://data.alexa.com/data?cli=10&url=%YOUR_URL%

例として当サイトwww.lancork.netを調べたい場合は以下の通りです。

http://data.alexa.com/data?cli=10&url=www.lancork.net

ブラウザで実行してみると以下のようなXMLのデータが返ってきます。POPULARITY要素のTEXT属性にAlexaランクと思われる数値が入っています。

<ALEXA VER="0.9" URL="lancork.net/" HOME="0" AID="kcASj1MNo000wv" IDN="lancork.net/">
<script/>
<SD>
<POPULARITY URL="lancork.net/" TEXT="458275" SOURCE="panel"/>
<REACH RANK="384966"/>
<RANK DELTA="-151449"/>
</SD>
</ALEXA>

国内ランクも出てくるときがあるのですが、大体25,000位以内でないと出てこないようです。

またパラメータに&dat=snbamzを追加した下記のURLでは、さらに詳細な情報を取得できます。

http://data.alexa.com/data?cli=10&dat=snbamz&url=%YOUR_URL%

おわりに

データはXMLで取得できるので、プログラムから値を取得するのは簡単にできそうです。公式APIが有料なのは残念ですが、APIを使うと提供元のサイトに負荷がかかるので仕方ありませんね。

他のサイトでも公開されていないAPIがあるかもしれないので調べてみたいと思いました。