0 votos

¿Cómo hacer que este script se desencadene con éxito en un momento específico?

No soy un programador de AppleScript ni una persona técnica en ningún sentido, pero he hecho algunas investigaciones y encontré una solución para mi declaración de problema.

Mi declaración de problema

Cómo hacer que ocurra un clic de ratón en un momento especificado.

Con ese fin, encontré un script simple en línea que hace clic en el cursor del ratón.

He aquí.

tell application "System Events"
    click
end tell

Y ahora, estoy tratando de activar este script en un momento determinado usando launchd. He creado un archivo plist en la carpeta "LaunchAgents" en Library como puedes ver en la captura de pantalla a continuación. introducir descripción de la imagen aquí

He configurado este archivo plist para activar el script a las 6AM en mi hora local. Incluso abro la página web y posiciono mi cursor justo encima del elemento que quiero hacer clic para reducir la complejidad.

Codificación del archivo plist

    Label
    com.mouseclick.plist
    ProgramArguments

        /usr/bin/osascript
        /Users/mugenvoid/Downloads/mouseclick.scpt

    StartCalendarInterval

        Hour
        6 
        Minute
        10 

Pero por más que lo intento, simplemente no consigo que se active en el momento indicado incluso después de cargar este archivo plist en launchd.

Esta es la guía que he estado intentando seguir --> https://www.maketecheasier.com/use-launchd-run-scripts-on-schedule-macos/

Agradecería un poco de ayuda aquí.

1voto

Mockman Puntos 16

Aquí hay un ejemplo de clic de ratón (que funciona para mí) usando safari.

tell application "Safari"
    activate -- bring safari to front
    tell application "System Events"
        tell application process "Safari"
            set xy to click at {250, 675}
        end tell

Observa el resultado: El 'elemento' en el punto de clic es un enlace a un sitio web.

texto estático "example.com" de elemento de interfaz de usuario "example.com" de grupo 2 de lista 6 de ¬
    elemento de interfaz de usuario 1 de área de desplazamiento 1 de grupo 1 de grupo 1 de grupo de pestañas 1 de ¬
    grupo divisor 1 de ventana "enlaces de red" de proceso de aplicación "Safari"

También puedo hacer clic en el enlace refiriéndome directamente a su elemento. Para hacer esto, reemplace la línea de comando clic en con los siguientes comandos. Esto sería más robusto que hacer clic en un punto en la pantalla.

set xy to texto estático "example.com" de elemento de interfaz de usuario "example.com" de grupo 2 de lista 6 de ¬
    elemento de interfaz de usuario 1 de área de desplazamiento 1 de grupo 1 de grupo 1 de grupo de pestañas 1 de ¬
    grupo divisor 1 de ventana "enlaces de red" de proceso de aplicación "Safari"
clic xy

Asigna la referencia a la variable xy y luego haz clic en ella. Podrías consolidar las dos líneas en una, pero creo que es más claro de esta manera.

Puede ser posible obtener el equivalente para cualquier aplicación que esté en tu captura de pantalla.

Por cierto, esa es una de las razones por las que chatgpt no debería ser fuente de código aquí. Parece que a menudo produce código que parece sensato pero no hace nada. Hay algunas preguntas aquí (y en stackoverflow) que explican en detalle cómo hacer scripts de la interfaz de usuario; intenta buscar una combinación de applescript y scripting de interfaz de usuario.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X