7月に一六社の教育セミナーに参加した際、「一六社の地域ホームページで表示しているバナー広告を定期的にTwitterにポストするようなシステムを開発すれば、一六社の持つSEO技術の根幹である被リンク数の拡張を自動的に行うことができます!」という話を含め、伊藤社長や一六社のスタッフの方々とTwitterの有効な利用方法について議論しました。このときはまだ、「地域ホームページにユーザーがアクセスするたびに、連携するTwitterアカウントにバナー広告が『つぶやき』としてポストされる」というイメージしかなかったのですが、伊藤社長も「やってみなさい」と仰ってくださったので、先月末から早速システムの開発に着手しました。
まず最初に取りかかったのは、一六社のプラットフォームからバナー広告を抽出するためのWebアプリケーション。地域ホームページ下総中山にサイドバーとして表示されているバナー広告の生成ロジックを分析しながら、目的とするバナー広告を取得するために必要なパラメータを調査して、REST形式でバナー広告の構成要素をリスティングするようなAPIを開発しました。
このAPIは、一六社の地域ホームページを運営している人であれば誰でも利用可能です。
API仕様
例: http://h2plus.biz/chiikihp/ads/list/[name/value]*
APIのURLは、http://h2plus.biz/chiikihp/ads/list/となります。後続する[name/value]には、以下のパラメータを指定します。
http://h2plus.biz/chiikihp/ads/list/area/12204/site/413
- area
地域ホームページ毎に割り当てられているエリアコード。
(例では、地域ホームページ下総中山の「12204」を指定) - site
地域ホームページ毎に割り当てられているサイトコード。
(例では、地域ホームページ下総中山の「413」を指定) - type
取得するバナー広告の種類。
local(エリアマッチング広告)、eshop(ネットショッピング)、nc(ネットチラシ)のいずれか。
省略した場合は、エリアマッチング広告が出力されます。 - size
取得するバナー広告の最大件数。
※実際に取得できる件数は指定値より少なくなる場合があります。
省略した場合は、最大10件のバナー広告が出力されます。 - format
バナー広告の出力形式。
xml(XML形式)、json(JSON形式)のいずれか。
省略した場合は、XML形式で出力されます。
XML形式の出力
APIのデフォルトの出力形式はXMLです。ここでは、以下のAPIアクセスの結果を例に挙げて、XMLの構造について説明します。
http://h2plus.biz/chiikihp/ads/list/area/12204/site/413/type/eshop/size/3
<?xml version="1.0" encoding="UTF-8" ?> <ads> <item> <title>沖縄県西表島の無農薬・国産パイナップルをお届け</title> <url>http://www3.c16.jp/20-0682e46/</url> </item> <item> <title>富山産水仙の球根を販売</title> <url>http://www21.c16.jp/0003/</url> </item> <item> <title>寺岡家のさしみしょうゆ(寿司用)</title> <url>http://www.s16.jp/item/265/</url> </item> </ads>
- ads要素
XMLのルートとなる要素です。子要素として0個以上のitem要素を持ちます。 - item要素
バナー広告1件を表す要素です。子要素としてtitle要素とurl要素をそれぞれ1つずつ持ちます。 - title要素
バナー広告のタイトル(キャッチコピー)を表す要素です。 - url要素
バナー広告のURLを表す要素です。
JSON形式の出力
formatパラメータで「json」を指定するとAPIはJSON形式で結果を出力します。ここでは、以下のAPIアクセスの結果を例に挙げて、JSONの構造について説明します。
http://h2plus.biz/chiikihp/ads/list/area/12204/site/413/format/json/size/3
{ "ads":{ "item":[ { "title":"\u4f1a\u54e1\u5236\u793e\u4f1a\u4eba\u30b5\u30fc\u30af\u30eb\u306b\u5165\u308a\u307e\u305b\u3093\u304b\uff1f", "url":"http:\/\/www4.c16.jp\/a0055\/" }, { "title":"\u8eca\u691c\u306e\u30b3\u30d0\u30c3\u30af\u7c73\u30f6\u5d0e\u5e97\uff08\u5343\u8449\u770c\u8239\u6a4b\u5e02\uff09", "url":"http:\/\/www3.c16.jp\/20-0416\/" }, { "title":"\u8239\u6a4b\u5e02\u30fb\u5e02\u5ddd\u5e02\u3067\u7a7a\u624b\u3084\u30cc\u30f3\u30c1\u30e3\u30af\u306a\u3069\u306e\u6b66\u9053\u6559\u5ba4\u300c\u7384\u6c17\u9053\u300d\u751f\u5f92\u52df\u96c6\uff01", "url":"http:\/\/www4.c16.jp\/a0605\/" } ] } }
- ads
itemを1つ持つオブジェクトです。 - item
titleとurlを持つオブジェクト(1件のバナー広告を表します)の配列です。 - title
バナー広告のタイトル(キャッチコピー)を表す文字列です。 - url
バナー広告のURLを表す文字列です。
エリアコードとサイトコード
運営する地域ホームページのエリアコードとサイトコードは、どのように調べればよいのでしょうか?
この2つのコードは、地域ホームページを構成する各ページ(phpファイル)に散在しています。例えば、地域ホームページのトップページにあたる「index.php」をメモ帳などのテキストエディタで開いてみましょう。ホームページビルダーなどオーサリングソフトを使っていると、HTML/PHPのソースを見ることに抵抗があるかもしれませんが、あくまで「コードの調査」が目的でページを編集するわけではありませんので恐れずにファイルを開いてみましょうw。
index.phpの最初の方にある以下のような2つのPHPコードを探してみてください。
$param["site"] = 413; $param["area"] = 12204;
$param["area"]の右辺にある12204がエリアコード、$param["site"]の右辺にある413がサイトコードです。サイトコードはアフィリエイト一六社のアフィリエイター用管理画面にある「管理サイト」タブでも確認することもできます。

管理サイト情報の「サイトID」欄に記載されている「413」がサイトコードです。
地域ホームページオーナー様へ
今回公開したREST APIは、一六社の持つ強力なISPプラットフォームとTwitterとを連携させるための布石として開発したものですが、新しいサービスのアイディアがあれば、APIをどんどん活用していただいて構いません。冒頭でも言及したように、地域ホームページのオーナーであれば誰でも利用することができます。是非、お試しください!
2009/10/26 at 14:07
[...] 一六社のバナー広告を取得するREST APIを公開します [...]
2009/11/5 at 14:03
[...] 一六社のバナー広告を取得するREST APIを公開します [...]