Я тестировал это только с Safari и Chrome, но см. Этот поток для более сложного скрипта.
delay 0.3 -- time to release modifier keys if the script is run with a shortcut
tell application "System Events" to tell (process 1 where frontmost is true)
if name is "Google Chrome" then
keystroke "p" using {option down, command down}
delay 0.1
tell menu button 1 of window 1
click
click menu item "Save as PDF…" of menu 1
end tell
keystroke "l" using {option down, command down}
keystroke return
else
keystroke "p" using command down
tell menu button 1 of sheet 1 of window 1
click
click menu item "Save as PDF…" of menu 1
end tell
keystroke "l" using {option down, command down}
keystroke return
end if
end tell
Вы также можете использовать wkpdf, но страница должна быть загружена снова, и она не работает с аутентификацией или блокировкой рекламы.
tell application "Google Chrome" to tell active tab of window 1
set u to URL
set t to title
end tell
do shell script "wkpdf --source " & quoted form of u & " --output ~/Desktop/" & quoted form of t & ".pdf"
Если вы назначите «Сохранить как PDF ...» для ⌘P в Системных настройках, вы можете открыть диалоговое окно, просто нажав PP, удерживая команду (или ⌥⌘P и ⌘P в Chrome).