メニュー

E-Mail
ASP.Netのお勉強
VB.Netのお勉強
Excel マクロ・VBAのお勉強
PHPのお勉強
Webデザインのお勉強
Javaのお勉強
総合サイトCocoaLiz
ネイルサロン検索
エステサロン検索
アロマサロン検索
アイビューティーサロン検索

Yahoo カテゴリWeb API ディレクトリツリー

Yahooが公開しているカテゴリWeb APIを利用します。
ディレクトリツリーにより、Yahoo!カテゴリに登録されたサイトデータ
やカテゴリのツリー構造を取得することができます。
AtomやRSSを読み込むことができます。

サンプルでは、沖縄県のディレクトリを表示し、
Google Chart APIを使って、Organizational Chart(組織図)形式で表示します。


作ったサンプルサイトは、こちらです。

コードは、下記。


<?php

require_once("HTTP/Request.php");

//YahooのAPI_ID
$apiId = "@@@@";

//ディレクトリツリーAPI
$url = "http://dir.yahooapis.jp/Category/V1/Category?appid=" .$apiId;
$url .= "&id=2075288777";

//APIを呼び出す
$req = &new HTTP_Request($url);

if ($req->sendRequest()) {
    $xml = simplexml_load_string($req->getResponseBody());
}


?>
<html>
<head>
<script type='text/javascript' src='https://www.google.com/jsapi'></script>
<script type='text/javascript'>

    google.load('visualization', '1', {packages:['orgchart']});
    google.setOnLoadCallback(drawChart);

    function drawChart() {
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'Name');
        data.addColumn('string', 'OYA');


<?php

function getURL($title,$path){
    return '<a href="http://dir.yahoo.co.jp' .$path .'" target="_blank">' .$title ."</a>";
}

    print "data.addRow(['" .getURL($xml->Space->Title, $xml->Space->Path)."','']);rn";
    foreach($xml->Category->Item as $item) {
        print "data.addRow(['" .getURL($item->Title, $item->Path) ."','" .getURL($xml->Space->Title, $xml->Space->Path)."']);rn";
    }

?>

        var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
        chart.draw(data, {allowHtml:true});
    }

</script>
<title>Yahoo カテゴリWeb API ディレクトリツリー</title>
</head>
<body>
<div id='chart_div'></div>
</body>
</html>



Copyright (C) 総合サイトCocoaLiz. All Rights Reserved.