Решение
Да, вы можете добиться этого с помощью Google Apps Script. Под следующим фрагментом кода вы можете найти краткое объяснение того, как это работает.
Код
function populateImage() {
var sheet = SpreadsheetApp.getActiveSheet();
// Get cell values of your link column
var values = sheet.getRange('B1:B5').getValues();
// Range where we want to insert the images
var imgrange = sheet.getRange('C1:C5');
for (i=0;i<5;i++){
// Cell we want to insert the image
var cell = imgrange.getCell(i+1, 1);
// Pin Id which is at the end of each url provided, in this case 146578162860144581
var number = values[i][0].substring(29,values[i][0].length-1);
// Url to make the fetch request to access the json of that pin
var url = 'https://widgets.pinterest.com/v3/pidgets/pins/info/?pin_ids='+number;
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var data = JSON.parse(json);
// Url of the image of the pin
var imgurl =data.data[0].images["237x"].url;
// Insert image from url
cell.setFormula('=image("'+imgurl+'")');
}
}
Результат
![image showing the results of this piece of code](https://i.stack.imgur.com/K8iUc.png)
Объяснение
Чтобы вставить изображение в На сайте в вашем листе вам понадобится изображение URL. Это самая сложная часть в этом выпуске. Pinterest не предоставляет хороший способ получить этот URL-адрес изображения, просто извлекая его в URL-адрес пин-кода, поскольку этот запрос вернет данные HTML, а не json. Для этого вам нужно сделать запрос на получение этого URL https://widgets.pinterest.com/v3/pidgets/pins/info/?pin_ids=PINIDNUMBER
. Вы можете найти больше информации об этом в этом вопросе переполнения стека , кредит идет на @SambhavSharma.
Когда вы выбираете следующий URL, вы получите пин-код json, из которого вы можете получить желаемый URL изображения (помимо многих других данных об этом пин-коде). С его помощью вы можете просто вставить его в следующий столбец.
Надеюсь, это помогло вам, дайте мне знать, если вам нужно что-то еще или вы чего-то не поняли.