Selezione dei file per l'inserimento di un applescript Safari

2

Sto tentando di automatizzare l'utilizzo del caricamento di file di Applescript su un sito web. Ho ottenuto quasi l'ultimo passaggio, ma non riesco a ottenere una finestra del Finder (file chooser) per rispondere agli script.

Ecco come appare il sito (non posso darti il sito reale, perché è una cartella clinica sicura).

Ilprocessopercaricareifileèdipremere"Aggiungi immagini" che posso fare in Apple / Javascript e visualizza una finestra del Finder (file chooser) come questa (di nuovo posso mostrare solo la parte a causa di problemi di privacy). Ci sono i pulsanti standard "scegli" e annulla "in basso.

NonriescoatrovareunmodoperottenerequestafinestradelFinderperrispondereaApplescript.Hoprovatocosedeltipo:

tellapplication"System Events"
    keystroke tab
end tell

e numerosi altri che utilizzano Finder ecc.

Qualche idea su come scegliere un file da questa finestra? O vai a questa finestra? O anche trovare le proprietà di questa finestra?

Grazie.

    
posta Jeff E 15.01.2015 - 08:56
fonte

1 risposta

1

Non è una finestra "Finder". È di proprietà di Safari

Non hai chiarito in che modo sai quale file scegliere. Quindi presumo che sarai parzialmente in grado di codificarlo nella sceneggiatura.

Questo esempio presuppone che tu possa formare una stringa di percorso per il file.

Questo esempio è anche scritto per fare clic e aggiungere un'immagine a una risposta su una di queste pagine Ask-different.

Sai già come fare clic sui pulsanti con Applescript / js

Ma puoi usare i tasti per inserire il comando G + cmd + shift che aprirà un foglio "Vai a .." in la finestra di dialogo "Scegli".

Quindi digita il tuo percorso sul tuo file.

I prossimi due pulsanti "Vai" e "Scegli" sono quelli predefiniti in modo che tu possa semplicemente premere Invio per colpirli.

(Questa immagine è stata caricata utilizzando lo script)

activateapplication"Safari"
tell application "Safari"
    tell document 1

        do JavaScript "document.getElementsByClassName('wmd-button')[5].click()"
        delay 1

        do JavaScript "document.getElementById('filename-input').click()"
    end tell

end tell
tell application "System Events"
    keystroke "G" using {command down, shift down}
    delay 1
    keystroke "~/Desktop/image/image.png"
    delay 1
    keystroke return

    delay 1
    keystroke return

    delay 1

end tell

tell application "Safari"
    tell document 1
        do JavaScript "document.getElementById('add-picture').click()"
    end tell
end tell
    
risposta data 15.01.2015 - 11:19
fonte

Leggi altre domande sui tag