Получите доступ к ссылке в браузере через правый клик, Applescript и / или Javascript? - PullRequest
0 голосов
/ 13 июня 2018

Я хочу щелкнуть правой кнопкой мыши обычную ссылку в (основной) браузер Chrome, Safari (дополнительный) или Firefox / Tor (третичный), а затем отправить ее куда-нибудь еще, используя Applescript.Как мне это сделать?

Я мог бы представить, что сначала я использую Javascript, чтобы получить реальную ссылку, а затем возвращаю ее в виде текста в Applescript для дальнейшей обработки.Имеет ли это смысл?Если это так, я был бы признателен за некоторые советы о том, как начать.

1 Ответ

0 голосов
/ 16 июня 2018

Вы можете сделать это с помощью Automator службы , которая добавит элемент контекстного меню (щелчок правой кнопкой мыши) при нажатии на ссылку в Safari (или Chrome ).

Прочтите Mac Automation Scripting Guide: создание общесистемной службы , в которой есть пошаговое руководство по созданию Automator сервис.

Во время строительства он будет выглядеть примерно так:

macOS Automator Workflow

Этот сервис, какВы можете видеть, активен только в Safari , когда выделен блок текста.К сожалению, вы не можете ограничить его только гиперссылками, но он включает их.

Если услуга доступна (т.е. вы находитесь в Safari и выделил некоторый текст), пункт меню, соответствующий сервису, появится в подменю правой кнопки мыши под названием «Сервисы», и он будет назван в соответствии с тем, что вы сохранили рабочий процесс, как в Automator .В моем случае служба называется «URL-адрес процесса».

При нажатии она выполняет AppleScript, который можно увидеть в рабочем процессе (он делает это в фоновом режиме, невидимо).

ЭтоВот где вы предлагаете использовать JavaScript, чтобы его использовать: AppleScript выполняет немного JavaScript в Safari (при условии, что у вас есть соответствующие разрешения для этого, отмечен галочкой в ​​ Safari "Разработка" меню).

Этот JavaScript-код возвращает один из двух результатов:

▸ Если выбранный текст представляет собой обычный текст без гиперссылки под ним,он возвращает пустую строку;

▸ Если выбранный текст является текстом гиперссылки, он возвращает URL с гиперссылкой.

Он сохраняет его в переменной href, которую затем вы можете делать как угоднохочу с.

Хорошая вещь о гиперссылках состоит в том, что вам не нужно щелкать и перетаскивать, чтобы выбрать текст (хотя вы можете, если хотите, и только часть текста должна быть выделена).Вместо этого вы можете просто щелкнуть правой кнопкой мыши ссылку, и она автоматически выберет ее для вас, что делает этот способ идеальным для активации службы.

...