2012年3月23日金曜日

Yahoo検索ランキングからキーワードを取得するスクリプト

WSHでDOMを扱う備忘録としてポストします。
最初はVBSで書こうとしたのですが、Msxml2.DOMDocumentが扱いにくかったのでJavaScriptで書き直しました。

コピペして拡張子を.jsにすると実行できます(Windowsのみ)。




var xmlUrl,
    keywords = [],
    list = '',
    i;

// Yahoo検索ランキングのRSS-XML
xmlUrl = "http://searchranking.yahoo.co.jp/rss/burst_ranking-rss.xml";
keywords = getKeywords(xmlUrl);

for (i = 0; i < keywords.length; i++) {
    list += keywords[i] + "\n";
}

WScript.echo(list);

// Yahoo検索ランキングのXMLからキーワードを抜き出して配列で返す
function getKeywords(xmlUrl) {
    var keywords = [],
        root, itemNodes, myErr, i;
    var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.6.0");

    xmlDoc.async = false;
    xmlDoc.load(xmlUrl);
    if (xmlDoc.parseError.errorCode != 0) {
        myErr = xmlDoc.parseError;
        WScript.Echo(myErr.reason);
        return false;
    } else {
        root = xmlDoc.documentElement;
        itemNodes = root.childNodes.item(0).getElementsByTagName("item");

        for (i = 0; i < itemNodes.length; i++) {
            keywords.push(itemNodes.item(i).childNodes.item(0).text);
        }
        return keywords;
    }
}



0 件のコメント:

コメントを投稿