Me gustaría recibir ayuda para escribir un AppleScript que redirija automáticamente amazon.com a smile.amazon.com. Suelo olvidarme siempre de usar smile. Con este automatizador nunca lo olvidaré. Lamentablemente soy nuevo en el uso de la herramienta.
Respuesta
¿Demasiados anuncios?SOLUCIÓN REVISADA
La siguiente solución se debe utilizar con Google Chrome.
Pegue el siguiente código AppleScript en un nuevo documento script Editor.app y guárdelo como aplicación "Stay Open".
Al hacer doble clic en esta nueva aplicación en el Finder, se iniciará Google Chrome si no se está ejecutando. Inmediatamente después, empezará a monitorizar las URLs de todas las pestañas de la ventana 1 de Google Chrome. Siempre que la URL de cualquier pestaña empiece por https://www.amazon.com es detectado, será automáticamente redirigido a https://smile.amazon.com . Cuando Google Chrome deje de ejecutarse, la aplicación se cerrará por sí sola.
La primera vez que abra su nuevo applet, asegúrese de elegir la opción de permitir que se ejecute... en cualquier diálogo del sistema que pueda aparecer en el primer lanzamiento.
Este código AppleScript me funciona usando la última versión de macOS Mojave.
on run
tell application "Google Chrome" to launch
end run
on idle
if application "Google Chrome" is not running then quit me
tell application "Google Chrome" to tell window 1
try
set amazonTabs to (tabs whose URL starts with "https://www.amazon")
delay 0.1
if amazonTabs is not {} then
set URL of item 1 of amazonTabs to "https://smile.amazon.com"
end if
end try
end tell
if application "Google Chrome" is not running then quit me
return 0.5
end idle
on quit
continue quit -- allows the script to quit
end quit
Debido a algunos comentarios sobre el código original de mi solución que utilizaba demasiados recursos del ordenador, creo que el código anterior ya no produce esos problemas.
Versión Safari
on run
tell application "Safari" to launch
end run
on idle
if application "Safari" is not running then quit me
tell application "Safari" to tell window 1
try
set amazonTabs to (tabs whose URL starts with "https://www.amazon")
delay 0.1
if amazonTabs is not {} then
set URL of item 1 of amazonTabs to "https://smile.amazon.com"
end if
end try
end tell
if application "Safari" is not running then quit me
return 0.5
end idle
on quit
continue quit -- allows the script to quit
end quit
Para poder controlar Safari mediante AppleScript, asegúrate de activar "Mostrar el menú Desarrollo en la barra de menús" en las Preferencias de Safari.
También tendrá que seleccionar "Permitir JavaScript desde los eventos de Apple" en el elemento de la barra de menú Desarrollo.