Как я могу извлечь данные из массива из вызова API в Google Script?

#arrays #json #google-apps-script #google-sheets #return

#массивы #json #google-apps-script #google-sheets #Возврат

Вопрос:

Я довольно новичок, так что потерпите.

Я создаю Google script, который позволит мне вызывать TMDb API и получать некоторую информацию из списка фильмов, который я собираю для себя. Я пытаюсь автоматически заполнить все значения, просто используя идентификатор TMDB.

После некоторых усилий я обнаружил, что проще всего создать функцию для каждого столбца, который я хочу заполнить (название, дата, жанр, URL-адрес плаката и т. Д.) И Передать входные данные из ячейки в электронной таблице, чтобы иметь возможность извлекать информацию, А затем возвращать данные в эту ячейку.

Я не могу понять это, хотя, когда дело доходит до категории «жанр», потому что она находится в массиве.

Вот мой код, который работает для другого столбца:

 function getPoster(input) {
  
  var movieID = input
  
  // Call the TMDB API for movie details
  var response = UrlFetchApp.fetch("https://api.themoviedb.org/3/movie/"   movieID   "?api_key=<<mykey>>");
  
  // Parse the JSON reply
  var json = response.getContentText();
  var data = JSON.parse(json);
  
  return data["poster_path"];

}
 

Использование данных API:

«poster_path»:»/hXLScIERphkTsMGdfKKvF4p4SPB.jpg «,

Однако категория «жанр» перечисляет их как массив:

«жанры»: [{«id»: 28, «name»:»Действие»},{«id»:18, «name»: «Драма»},{«id»:53, «name»: «Триллер»}],

Как я могу написать возврат, чтобы он отправлял строку с показанными жанрами «Боевик, драма, триллер» в одну соответствующую ячейку (не перетекая в соседние ячейки), игнорируя при этом «идентификатор»?

Ответ №1:

вам нужно создать массив из значений genre имен.

используйте этот фрагмент:

 var genres = [{"id":28,"name":"Action"},{"id":18,"name":"Drama"},{"id":53,"name":"Thriller"}];

// Return "Action, Drama, Thriller" as a string into a single cell
return genres.map(function(genre){
    return genre.name;
}).join(", ");
 

Пример вывода при печати:

пример вывода