価格.comの商品検索APIをGoogle Apps Script で作成した時のメモ。
Amazon編とほぼ同じ。
1.API利用のための準備
以下のページより、利用を申し込む。
価格.com WEBサービス - Top
2.サンプルコードの作成
以下の作業を行い、動作を確認。
- 新しいスプレッドシートを作成し、以下のように入力。
- 範囲を作成
範囲名 | SearchRange |
セルの範囲 | A2:C9 |
- スクリプトの作成
キーワードから、タイトル・最低価格を取得するサンプルコードは以下。
function main() { sheet = SpreadsheetApp.getActiveSpreadsheet(); range = sheet.getRangeByName("SearchRange"); //Kakaku API Run for(i = 1; i < 3; i++) { var cellKeyword = range.getCell(i, 1).getValue(); var xmlData = getXML_(cellKeyword); var productName = getProductName_(xmlData); var price = getPrice_(xmlData); range.getCell(i, 2).setValue(productName); range.getCell(i, 3).setValue(price); } } function getXML_(keyword){ var url = "http://api.kakaku.com/WebAPI/ItemSearch/Ver1.0/ItemSearch.aspx?"; var apikey = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; //Your API Key var parameters = { "ApiKey":apikey, "Keyword":keyword } var para_array = []; for(var para in parameters){ para_array.push(para + "=" + encodeURIComponent(parameters[para])); } var urlParameter = para_array.join('&'); var response = UrlFetchApp.fetch(url + urlParameter); //Browser.msgBox(response.getContentText()); var xml = Xml.parse(response.getContentText(), false); return xml; } function getProductName_(xmlData){ var title = xmlData.getElement().getElement("Item").getElement("ProductName").getText(); return title; } function getPrice_(xmlData){ var price = xmlData.getElement().getElement("Item").getElement("LowestPrice").getText(); return price; }