eBayのAPIを利用して商品情報を取得し、Googleスプレッドシートに入力するためのシステムを構築するには
eBayのAPIを利用して商品情報を取得し、Googleスプレッドシートに入力するためのシステムを構築するには、以下のステップが必要です。
1. eBay APIの登録と取得
eBay Developer Programに登録し、App IDを取得します。
必要なAPIの認証情報(App ID、Dev ID、Cert ID)を取得します。
2. eBay APIの呼び出し
商品情報を取得するために、eBay Finding APIやShopping APIを使用します。
3. Google Apps Scriptでの実装
Google Apps Scriptを使用して、eBay APIからデータを取得し、スプレッドシートに書き込むスクリプトを作成します。
4. API呼び出し制限の対策
APIの呼び出し回数制限に注意し、必要に応じて呼び出し頻度を調整するロジックを追加します。
以下に、基本的なGoogle Apps Scriptのサンプルコードを示します。このコードは、eBay APIを呼び出して商品情報を取得し、スプレッドシートに書き込むものです。
スプレッドシートのセットアップ
1. Googleスプレッドシートを作成し、商品IDを入力する列を作成します。
2. Google Apps Scriptエディタを開きます(「拡張機能」→「Apps Script」)。
Google Apps Scriptのコード
次のコードをGoogle Apps Scriptエディタに貼り付け、適宜修正してください。(javascript)
const EBAY_APP_ID = 'YOUR_EBAY_APP_ID'; // eBayのApp IDをここに入力
function getEbayItemInfo(itemId) {
const endpoint = `https://open.api.ebay.com/shopping?callname=GetSingleItem&responseencoding=JSON&appid=${EBAY_APP_ID}&siteid=0&version=967&ItemID=${itemId}&IncludeWatchCount=true`;
const response = UrlFetchApp.fetch(endpoint);
const data = JSON.parse(response.getContentText());
return data;
}
function updateSpreadsheet() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
const lastRow = sheet.getLastRow();
const itemIds = sheet.getRange(`A2:A${lastRow}`).getValues(); // 商品IDの範囲を指定
for (let i = 0; i < itemIds.length; i++) {
const itemId = itemIds[i][0];
if (itemId) {
const itemInfo = getEbayItemInfo(itemId);
if (itemInfo.Ack === "Success") {
const item = itemInfo.Item;
const title = item.Title || '';
const viewCount = item.HitCount || 0;
const watchCount = item.WatchCount || 0;
const isEnded = item.ListingStatus === 'Completed' ? 'Yes' : 'No';
sheet.getRange(`B${i + 2}`).setValue(title);
sheet.getRange(`C${i + 2}`).setValue(viewCount);
sheet.getRange(`D${i + 2}`).setValue(watchCount);
sheet.getRange(`E${i + 2}`).setValue(isEnded);
} else {
Logger.log(`Failed to fetch data for item ID: ${itemId}`);
}
}
}
}
function testUpdateSpreadsheet() {
updateSpreadsheet();
}
実行方法
1. `YOUR_EBAY_APP_ID` を自分のeBay App IDに置き換えます。
2. `testUpdateSpreadsheet`関数を実行して、スプレッドシートにデータが入力されることを確認します。
API呼び出し制限対策
Google Apps Scriptの実行時間やAPI呼び出し回数に制限がありますので、次のような対策を検討してください。
1回の実行で処理する商品IDの数を制限する。
複数日に分けて実行する。
`Utilities.sleep(milliseconds)`を使用して呼び出し間隔を調整する。
ここから先は
¥ 1,500
この記事が気に入ったらサポートをしてみませんか?