这可能是一个非常新手的问题,但我是一个非常新手的程序员,所以这里.
我使用GAS和Google获取图书封面的url,使用以下代码:
function myFunction() {
var url = "https://www.googleapis.com/books/v1/volumes?q=flowers+inauthor:keyes&country=US"
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var data = JSON.parse(json);
Logger.log(response);
}根据我有限的知识,我尝试使用它来获得正确的URL:
Logger.log(data.items.imageLinks.smallThumbnail);但它只会返回一个错误。是不是缺少了什么东西,或者有什么不同的方法来得到我需要的变量?
发布于 2022-07-28 08:36:21
问题是,data.items是一个由10个元素组成的数组,因此必须对其进行索引。
如果您想访问第一个元素:
function myFunction() {
var url = "https://www.googleapis.com/books/v1/volumes?q=flowers+inauthor:keyes&country=US"
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var data = JSON.parse(json);
console.log(data.items.length)
Logger.log(data.items[0].volumeInfo.imageLinks.smallThumbnail);
}如果要访问所有元素并将其存储在数组中:
function myFunction() {
var url = "https://www.googleapis.com/books/v1/volumes?q=flowers+inauthor:keyes&country=US"
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var data = JSON.parse(json);
var items = data.items;
var smallThumbnails = items.map(x=>x.volumeInfo.imageLinks.smallThumbnail);
Logger.log(smallThumbnails);
}输出:
[http://books.google.com/books/content?id=gK98gXR8onwC&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api, http://books.google.com/books/content?id=LRlCAAAAYAAJ&printsec=frontcover&img=1&zoom=5&source=gbs_api, http://books.google.com/books/content?id=Fgn65IL3q4wC&printsec=frontcover&img=1&zoom=5&source=gbs_api, http://books.google.com/books/content?id=3vFDvgAACAAJ&printsec=frontcover&img=1&zoom=5&source=gbs_api, http://books.google.com/books/content?id=gK98gXR8onwC&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api, http://books.google.com/books/content?id=F1wgqlNi8AMC&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api, http://books.google.com/books/content?id=64tuPwAACAAJ&printsec=frontcover&img=1&zoom=5&source=gbs_api, http://books.google.com/books/content?id=wAUiAAAAMAAJ&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api, http://books.google.com/books/content?id=7hLQ_F0obXAC&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api, http://books.google.com/books/content?id=tVxnDwAAQBAJ&printsec=frontcover&img=1&zoom=5&edge=curl&source=gbs_api]https://stackoverflow.com/questions/73149518
复制相似问题