Le schede di riferimento di AppleScript si interrompono in modo anomalo su Chrome


0

Sto usando con successo uno script da molto tempo, che utilizza Chrome per calcolare eseguire alcuni javascript e restituire il risultato.

tell application "Google Chrome"
    tell window 1
        tell tab 1
            [do something here]
        end tell
    end tell
end tell

Oggi, dopo molti mesi, ho provato a modificare lo script ma l'Editor AppleScript si rifiuta di salvarlo (anche senza alcuna modifica, ad esempio dopo aver digitato uno spazio e quindi cancellato ...), mostrando un messaggio di errore:

Syntax Error
Expected end of line but found number.

mettendo in evidenza il fatto 1di tab 1essere l'autore del reato ...

Cosa c'è di sbagliato nell'ultima versione dell'editor di applecript o di Chrome? Qualche idea su come aggirare questo problema?


Utilizzando l'editor di script 2.7 e Google Chrome 39.0.2171.99 (64 bit) su OS X 10.10.1 e lo script funziona correttamente (utilizzando activateinvece di "[fai qualcosa qui]").
Asmus,

Quale versione di OS X stai utilizzando?
Nohillside

Risposte:


1

Posso davvero ottenere il tuo esempio per lavorare senza problemi, facendo semplicemente qualcosa di semplice:

tell application "Google Chrome"
  tell window 1
    tell tab 1
        get URL
    end tell
  end tell
end tell

Questo mi fa pensare che il problema potrebbe essere nella sezione "fai qualcosa qui" del tuo script: non ho mai trovato i messaggi di errore di Applescript molto affidabili.

Detto questo, potresti anche provare ad abbreviare il tuo codice:

tell application "Google Chrome"
  tell active tab of first window
    [do something here]
  end tell
end tell

Usando il mio esempio precedente, super semplice, questo funziona per me:

tell application "Google Chrome"
  get URL of active tab of first window
end tell

Dovrei anche notare che sto usando Script Editor 2.7 (176) su Yosemite 10.10.1

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.