Steamのゲーム名を出すスプレッドシート関数を作った
TL;DR
スプレッドシート付帯のApps Scriptに次の関数を埋め込むだけ
function STEAM_GAME_NAME(url, language = 'japanese') {
try {
// URLからapp idを取り出し
const appId = url.match(/^https:\/\/.*\/app\/(\d+).*$/)[1];
// steamのapiからアプリ情報を取得
const res = UrlFetchApp.fetch(`http://store.steampowered.com/api/appdetails?appids=${appId}&l=${language}`).getContentText();
// jsonに変換
const resJson = JSON.parse(res);
// 整形
const appInfo = resJson[Object.keys(resJson)[0]];
// nameを取り出し
return appInfo.data.name;
} catch(e) {
// エラーの時はとりあえず問答無用でこの文字にする
return `エラー: 取得できませんでした。`;
}
}
設定方法
まずは適当にスプレッドシートにsteamのゲームのURLを貼っておく
「拡張機能」の「Apps Script」をクリック
初期で入っている「myFunction」をバッサリ消して、上記のコード(function STEAM_GAME_NAME~)を張り付け
あとは関数を突っ込むだけ。
「=STEAM_GAME_NAME($B3)」
ちなみに、第二引数に言語を指定できる。
「=STEAM_GAME_NAME($B3,"german")」
デフォルトは"japanese"
この記事が気に入ったらサポートをしてみませんか?