Skip to content

Instantly share code, notes, and snippets.

@Arakade
Created May 7, 2019 12:30
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Arakade/c3f7c94bb7b5c8554a31a1d433b3b419 to your computer and use it in GitHub Desktop.
Save Arakade/c3f7c94bb7b5c8554a31a1d433b3b419 to your computer and use it in GitHub Desktop.
Google Scripts bound spreadsheet script to get data from Steam Spy and place in sheet
function getSteamSpyAppDetails() {
// Get the appId from spreadsheet for now:
var sheet = SpreadsheetApp.getActiveSheet();
var appId = sheet.getDataRange().getCell(1, 1).getValue();
// Build query
var url = 'https://steamspy.com/api.php'
+ '?request=appdetails&appid=' + encodeURIComponent(appId);
Logger.log("Sending: \"%s\"", url);
var response = UrlFetchApp.fetch(url, {'muteHttpExceptions': true});
Logger.log(response);
// Get the data out
var json = response.getContentText();
var data = JSON.parse(json);
Logger.log("Tags: %s", data.tags);
var tags = data.tags;
// If we didn't use sheets above, do it now
// var sheet = SpreadsheetApp.getActiveSheet();
// Process tags data into 2 arrays (from {"FPS":20545,"Multiplayer":16593} to ["FPS","Multiplayer"] and [20545,16593]
var headers = new Array();
var values = new Array();
for (var k in tags) {
headers.push(k);
values.push(tags[k]);
}
// Logger.log("headers: \"%s\"", headers);
// Logger.log("values: \"%s\"", values);
// Append to the spreadsheet
sheet.appendRow(headers);
sheet.appendRow(values);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment