Добре, мій шлях полягає в тому, щоб попросити Safari зробити JavaScript, який отримає все те, що мені потрібно (я маю на увазі URL-адреси повноцінних зображень) для поточної сторінки, коли користувач натискає гарячу клавішу.
Хитрість полягає в тому, що, коли ви вибираєте (hower) зображення, ви бачите чорний ящик у нижній частині міні-зображення. Це означає, що HTML змінився, тому я просто зрозумів, що зміни (відображаються зміни властивостей від жодного до блоку) і запитають JS отримати будь-які блоки з цим властивістю, коли користувач натискає клавішу.
Докладніше див.
tell application "Safari"
set result to (do JavaScript "
function f()
{
var imageHolderElements = document.getElementsByClassName('_aOd rg_ilm');
for (var i = 0; i < imageHolderElements.length; i++)
{
var style = getComputedStyle(imageHolderElements[i], null);
var display = style.getPropertyValue('display');
if (display == 'block')
{
var src = imageHolderElements[i].parentNode.getAttribute('href');
var parameter = 'imgurl=';
var index = src.indexOf(parameter) + parameter.length;
console.log(index);
var result = src.substring(index, src.length);
console.log(result);
var paramDelim = result.indexOf('&');
if (paramDelim > 0){
var result_result = '';
result_result = result.substring(0, paramDelim);
}
console.log(result_result);
return result_result;
}
}
}
var x = 1;
var x = '' + f(); x" in current tab of first window) as string
return result
end tell
tell application?