Vai al contenuto

Come fare screenshot ripetuti con Automator su Mac

Crea un workflow di Automator con Take Screenshot e Loop, poi usa un'azione shell quando ti servono file in ordine.

13 min di letturaProduttivitàDi Temposhot Team

Automator è incluso in macOS e può fare una serie di screenshot senza software aggiuntivo. Un workflow di due o tre azioni cattura lo schermo, attende e ripete. Questo articolo costruisce il workflow in due modi, lo salva come app ed elenca i casi in cui uno strumento di cattura dedicato richiede meno lavoro.

Verifica l'accesso alla registrazione dello schermo di Automator

macOS tratta la cattura dello schermo come un permesso protetto. La prima volta che un workflow cattura lo schermo, macOS chiede se Automator può registrare lo schermo. Se rifiuti o il prompt non compare, i file salvati mostrano solo lo sfondo e la barra dei menu.

Apri System Settings, poi Privacy e sicurezza, e trova l'elenco per la registrazione dello schermo. L'etichetta esatta cambia tra le versioni di macOS. Attiva Automator in quell'elenco, chiudi Automator e riaprilo.

Un workflow salvato come app è una voce separata in quell'elenco. L'app richiede un proprio permesso alla prima esecuzione, anche quando Automator ha già l'accesso.

Checklist delle voci della privacy di macOS che può richiedere un job di screenshot con Automator: registrazione dello schermo per Automator, registrazione dello schermo per l'app salvata, accessibilità per la pressione dei tasti e un nuovo avvio dopo ogni modifica.

Perché compare il risultato con solo lo sfondo

Senza accesso alla registrazione dello schermo, macOS completa comunque la cattura, ma restituisce solo i contenuti che il processo può vedere: l'immagine del desktop e la barra dei menu. Non compare nessun errore. Per questo il primo test va aperto e ispezionato, non solo contato. Un file di qualche centinaio di kilobyte quando ti aspettavi diversi megabyte è un segnale rapido che mancano le finestre delle app.

Spostare o rinominare l'app salvata

macOS collega la voce dei permessi all'app. Se ricostruisci il workflow, lo salvi di nuovo con un altro nome o lo sposti in un'altra cartella, il sistema può trattarla come una nuova app e chiedere di nuovo il permesso, oppure negarlo senza avvisi finché non rimuovi la voce vecchia e aggiungi quella nuova. Scegli il nome e la posizione definitivi prima della prima esecuzione reale.

Scegli le azioni native o un'azione shell

Automator offre due strade per lo stesso risultato:

  • Azioni native. L'azione "Take Screenshot" più l'azione "Loop". Non richiede codice, ma il controllo sui nomi dei file e sull'area di cattura è limitato.
  • Un'azione shell. L'azione "Run Shell Script" chiama il comando screencapture. Richiede qualche riga di shell, ma controlli esattamente nomi dei file, area e formato.

Inizia con le azioni native per un test rapido. Passa all'azione shell quando i file si sovrascrivono a vicenda o quando ti serve un'area fissa.

Confronto tra l'azione Take Screenshot di Automator e un'azione Run Shell Script che chiama screencapture: sforzo di configurazione, nomi dei file, controllo dell'area, scelta del formato e competenze richieste.

Prova prima il comando nel Terminale

Prima di incollare una riga di shell in Automator, eseguila una volta nel Terminale. screencapture -x ~/Desktop/test.png deve creare un file sul Desktop senza suono. Se produce un'immagine con solo lo sfondo, il Terminale non ha l'accesso alla registrazione dello schermo, che è una voce di permesso separata da quella di Automator. Quando il comando funziona nel Terminale, i problemi rimanenti dentro Automator riguardano i permessi di Automator stesso o i percorsi, e si isolano più in fretta.

Opzione 1: usa Take Screenshot e Loop

  1. Crea un workflow

    Apri Automator dalla cartella Applicazioni e crea un nuovo documento Workflow.

  2. Aggiungi Take Screenshot

    Cerca "screenshot" nella libreria e trascina Take Screenshot nel workflow. Scegli la cattura a schermo intero e una destinazione in una cartella usata solo per questo job. Le opzioni disponibili cambiano in base alla versione di macOS.

  3. Aggiungi una pausa

    Aggiungi l'azione Pause e imposta l'attesa, per esempio 3 secondi.

  4. Aggiungi il loop

    Aggiungi Loop alla fine. Scegli di ripetere automaticamente e di fermarti dopo un numero di volte, per esempio 10, oppure dopo un certo numero di minuti.

  5. Esegui un test breve

    Imposta il numero a 3, seleziona Run e apri la cartella.

Controlla i nomi dei file dopo il test. Se l'azione scrive lo stesso nome a ogni passaggio, ogni cattura sostituisce la precedente e ti ritrovi con un solo file. Aggiungere un'azione di rinomina del Finder che accoda data e ora aiuta, ma un numero progressivo è più facile da ordinare. L'opzione 2 risolve il problema in modo diretto.

Impostazioni del workflow nativo di Automator: Take Screenshot impostato a Full screen in una cartella dedicata, Pause impostato a 3 secondi e Loop impostato a Loop automatically con stop dopo 10 volte.

Quanto dura davvero un loop

L'azione Pause copre solo una parte del ciclo. Ogni passaggio impiega anche tempo a scrivere l'immagine, e su un display 5K un PNG a schermo intero può richiedere una frazione di secondo non trascurabile. Per 10 loop con una pausa di 3 secondi, le sole attese sono 30 secondi, e l'esecuzione reale è un po' più lunga. Per job sensibili ai tempi, come un fotogramma per ogni cambio pagina, misura un'esecuzione con un cronometro e regola la pausa invece di fidarti del valore nominale.

Quattro numeri del test con Automator: 10 loop, una pausa di 3 secondi, almeno 30 secondi di attesa totale e 10 file PNG numerati attesi nella cartella.

Nomi progressivi con Rename Finder Items

Se preferisci restare sulle azioni native, l'azione Rename Finder Items ha una modalità che rende progressivi i nomi. Lavora sui file che riceve in ingresso, quindi il workflow deve passarle ogni volta lo screenshot nuovo. In pratica questo diventa complicato dentro un loop. Un percorso più pulito è eseguire il loop nativo in una cartella vuota con nomi basati su data e ora, poi lanciare un secondo workflow, usato una sola volta, che rinomina in sequenza tutti i file della cartella in ordine di nome.

Opzione 2: combina Run Shell Script con il Loop di Automator

Sostituisci Take Screenshot con Run Shell Script e mantieni le azioni Pause e Loop. Incolla questo nell'azione, con la shell impostata su zsh:

dir=~/Captures/automator
mkdir -p "$dir"
n=$(ls "$dir" | wc -l | tr -d ' ')
screencapture -x -t png "$dir/frame-$(printf %04d $((n + 1))).png"

Ogni passaggio conta i file già presenti nella cartella e scrive il numero successivo, così i fotogrammi si ordinano nell'ordine di cattura: frame-0001.png, frame-0002.png e così via. Il flag -x disattiva il suono dell'otturatore. Aggiungi -R 0,0,1440,900 prima del nome del file per catturare un'area fissa invece dell'intero schermo.

Svuota la cartella, oppure cambia dir, prima di ogni nuovo job. Altrimenti la numerazione continua dall'ultima esecuzione.

Coordinate per un'area fissa

I valori dopo -R sono x, y, larghezza e altezza in punti, misurati dall'angolo in alto a sinistra del display principale. Su un display Retina l'immagine salvata ha il doppio dei pixel in ogni direzione, quindi -R 0,0,1440,900 produce un'immagine di 2880 × 1800 pixel. Per trovare i numeri, premi Shift+Command+4: il mirino mostra accanto le coordinate del puntatore. Annota l'angolo in alto a sinistra e quello in basso a destra dell'area, premi Escape per annullare, poi sottrai per ottenere larghezza e altezza. Scrivi i quattro numeri e tieni la finestra di destinazione nella stessa posizione per ogni esecuzione.

Tasti usati con il workflow di Automator: Shift+Command+4 per leggere le coordinate, Escape per annullare il mirino, Command+R per eseguire il workflow in Automator, Command+S per salvarlo e Control+C per fermare caffeinate.

Aggiungi un cambio pagina tra i fotogrammi

Per catturare una sequenza di slide o pagine, il workflow deve premere un tasto dopo ogni fotogramma. Aggiungi un'azione Run AppleScript dopo l'azione shell:

on run {input, parameters}
	tell application "System Events" to key code 124
	return input
end run

Key code 124 è la freccia destra. Il tasto va all'app in primo piano, quindi porta in primo piano l'app di destinazione prima di avviare e non toccare il Mac durante l'esecuzione. L'app salvata richiede il permesso di Accessibilità perché System Events possa inviare i tasti.

Flusso di un passaggio del loop di Automator: Run Shell Script salva un fotogramma numerato, Run AppleScript invia key code 124, Pause attende 2 secondi e Loop avvia il passaggio successivo fino al numero impostato.

Un job di un fotogramma al minuto

Per un job lento, come guardare una dashboard durante un deploy di 2 ore, imposta Pause a 60 secondi e imposta Loop in modo che si fermi dopo 120 minuti. Il loop controlla il limite di tempo tra un passaggio e l'altro, quindi l'esecuzione termina al primo passaggio dopo il limite e produce circa 120 fotogrammi. Ogni fotogramma è un'immagine a schermo intero, quindi controlla prima lo spazio libero su disco. L'esecuzione occupa la finestra di Automator o l'app salvata per tutto il tempo. Fermarla in anticipo termina il workflow, e i fotogrammi già salvati restano nella cartella.

Cronologia del job lento con Automator: avvio a 0 con il fotogramma 1, fotogramma 30 a 30 minuti, fotogramma 60 a un'ora, fotogramma 120 a due ore, e il loop termina al primo passaggio dopo il limite di 120 minuti.

Più display

screencapture con un solo nome di file cattura solo il display principale. Con -D 2 cattura il secondo display, e puoi passare due nomi di file per salvare entrambi i display in un solo passaggio. I numeri dei display seguono la disposizione in System Settings e possono cambiare quando un display viene ricollegato, quindi controlla un fotogramma per ogni display prima di un'esecuzione lunga.

Salva un'app Automator riutilizzabile

Scegli File poi Save e seleziona Application come formato del file. Conserva l'app in un luogo stabile, come la cartella Applicazioni. Con un doppio clic il workflow viene eseguito senza aprire Automator.

Alla prima esecuzione dell'app salvata compare il suo prompt di registrazione dello schermo. Se il workflow invia tasti tramite AppleScript, l'app richiede anche il permesso di Accessibilità.

Eseguilo con una scorciatoia da tastiera

Un Quick Action di Automator può essere associato a una scorciatoia da tastiera. Crea un nuovo documento di tipo Quick Action, impostalo per non ricevere input in nessuna applicazione, aggiungi le stesse azioni e salvalo. Poi apri la sezione delle scorciatoie da tastiera in System Settings, trova l'azione tra i servizi e assegnale una scorciatoia. La scorciatoia avvia il loop da qualsiasi app, utile per i job con cambio pagina in cui l'app di destinazione deve restare in primo piano.

Albero di cartelle di un job di cattura con Automator: l'app Capture Loop salvata in Applications, un Quick Action nella cartella Services e una cartella Captures con fotogrammi PNG numerati.

Risolvi i problemi del workflow

SintomoCausa probabileSoluzione
Le immagini mostrano solo lo sfondoPermesso di registrazione dello schermo mancanteConsenti Automator o l'app salvata, poi riaprila
Un solo file dopo molti loopNome di file fisso sovrascritto a ogni passaggioUsa l'opzione 2 o aggiungi un passaggio di rinomina
Il loop viene eseguito una volta solaLoop impostato per chiedere ogni voltaPassa a Loop automatically
Manca il secondo displayCattura a schermo intero solo di un displayCattura ogni display con -D 1 e -D 2
I fotogrammi sono neriIl display si è spento durante l'esecuzioneTieni il Mac sveglio per tutta la durata dell'esecuzione

Leggi il log del workflow

Quando un'esecuzione si ferma presto, il log nella finestra di Automator mostra quale azione è fallita e il messaggio di errore. Un'azione shell che termina con un errore interrompe il loop. Una causa comune è un percorso con spazi non racchiuso tra virgolette, come ~/My Captures. Mantieni le virgolette attorno a "$dir/..." come nello script sopra. Un'altra causa è una cartella su un disco esterno non montato al momento dell'esecuzione dell'app salvata.

Tieni il Mac sveglio

Un loop lungo può superare il timer di spegnimento del display. Il comando caffeinate tiene il Mac sveglio mentre un altro comando è in esecuzione, e caffeinate -d impedisce lo spegnimento del display. Il metodo più semplice è avviarlo nel Terminale prima dell'esecuzione e fermarlo con Control+C al termine. In alternativa, aumenta il tempo di spegnimento del display in System Settings per la durata del job.

Elenco di cose da fare e da non fare per i loop di Automator: usa una cartella dedicata, testa con 3 loop, racchiudi i percorsi tra virgolette e tieni il Mac sveglio; non riutilizzare una cartella tra job né spostare l'app salvata dopo aver concesso il permesso.

Quando Automator non basta

Automator copre un numero fisso di passaggi a un ritmo fisso. Alcune esigenze comuni richiedono lavoro in più:

  • Pressione di un tasto tra i fotogrammi. Girare una pagina richiede un passaggio AppleScript che invia un tasto tramite System Events, più il permesso di Accessibilità.
  • Arresto a un orario. L'azione Loop conta passaggi o minuti. Fermarsi alle 18:30 richiede logica sulle date in uno script.
  • Pausa e ripresa. Fermarsi in anticipo termina l'intero workflow.
  • Output ricercabile. Automator può combinare le immagini in un PDF, ma senza OCR il PDF non ha uno strato di testo.

Temposhot gestisce questi casi come impostazioni. Ogni ciclo salva uno screenshot, invia il Key press facoltativo e attende l'intervallo. Le condizioni di arresto sono Screenshots, Duration o End time, e la barra degli strumenti fluttuante mette in pausa, riprende o termina l'esecuzione. Le esportazioni includono un PDF ricercabile e un MP4. L'automazione dei tasti, Duration, End time e gli screenshot illimitati per sessione richiedono Temposhot Pro.

Confronto tra un workflow di screenshot in Automator e Auto Capture di Temposhot su pressione dei tasti, condizioni di arresto, pausa e ripresa, cattura di una finestra e formati di output.

Lo stesso job con le impostazioni di Auto Capture

Il workflow con cambio pagina sopra, 40 fotogrammi con la freccia destra e una pausa di 2 secondi, si mappa su quattro campi. Il conto alla rovescia è l'unico campo senza equivalente in Automator. Le scelte sono None, 3 s (predefinito), 5 s e 10 s, e dà il tempo di portare il lettore alla prima pagina prima del primo fotogramma. Imposta Stop condition su Screenshots con 40, Interval a 2 secondi, Key press su Right Arrow e Countdown a 3 s, poi scegli la finestra nella scheda Windows. Temposhot porta quella finestra in primo piano all'avvio dell'esecuzione, così il tasto la raggiunge. Se esegui spesso il job, Save Current Setup salva i quattro valori come preset.

Cinque passaggi per ricostruire in Temposhot il job di Automator con cambio pagina: apri Auto Capture, imposta 40 screenshot e un intervallo di 2 secondi, registra Right Arrow, scegli la finestra ed esporta un PDF.

Per un'esecuzione che deve fermarsi alle 18:30, imposta Stop condition su End time con quell'orario locale. La pausa non sposta l'orario di fine, quindi una pausa di 20 minuti termina comunque l'esecuzione alle 18:30. Il percorso con Automator richiede uno script che legge l'orologio e termina il loop.

Impegno per un job di 300 pagine

Immagina 300 pagine di un documento che puoi catturare, un fotogramma per pagina con la freccia destra tra una e l'altra. In Automator il job richiede l'azione shell con un nome numerato, un passaggio AppleScript per i tasti, l'accesso di Accessibilità per l'app salvata, un'area misurata con il mirino e un passaggio separato per creare un PDF, che comunque non ha uno strato di testo. Qualsiasi interruzione termina l'esecuzione, e per ripartire devi correggere il conteggio e il numero iniziale. In Auto Capture lo stesso job sono quattro campi e una scelta della finestra. L'esecuzione si può mettere in pausa e riprendere dalla barra degli strumenti fluttuante, e l'esportazione PDF include il testo OCR. La differenza non sta nella qualità della cattura, ma nella quantità di lavoro di raccordo attorno alla cattura.

Quando Automator resta lo strumento giusto

Automator resta una buona scelta quando il job deve girare su un Mac dove non puoi installare app, quando l'output deve essere solo file immagine grezzi, o quando la cattura è un passaggio di un workflow più ampio che sposta file, ridimensiona immagini o invia email. In questi casi l'azione shell dell'opzione 2 con un nome di file numerato è il blocco più affidabile.

Verifica dei tempi per il job di 40 fotogrammi

Con un conto alla rovescia di 3 secondi e un intervallo di 2 secondi, il job di 40 fotogrammi attende circa 83 secondi in totale: 3 secondi prima del primo fotogramma e 80 secondi di intervalli, senza contare il tempo di ogni cattura. La versione con Automator aggiunge anche il tempo di salvataggio a ogni passaggio, quindi la sua esecuzione reale è più lunga di quanto indicano le sole impostazioni di pausa. Avvia l'esecuzione in Temposhot, conta i fotogrammi alla fine e verifica che siano 40. Se il conteggio è diverso, controlla di nuovo la condizione di arresto prima della prossima esecuzione.

Risolvi i problemi dell'esecuzione in Temposhot

SintomoCausa probabileSoluzione
Key press non ha effettoAccessibilità non concessa, oppure macOS gestisce il tasto a livello globaleConcedi Accessibilità, poi esegui un breve test con il tasto
La finestra di destinazione non è in primo pianoAccessibilità non concessaConcedila; se macOS blocca ancora il cambio di focus, clicca la finestra quando Temposhot lo chiede
I fotogrammi si ripetonoIl tasto è arrivato prima che la pagina finisse di essere disegnataAumenta l'intervallo, per esempio da 2 a 3 secondi
Il primo fotogramma mostra la pagina sbagliataIl conto alla rovescia è troppo breve per passare alla finestraImposta il conto alla rovescia a 5 o 10 secondi
L'esecuzione si ferma prima dei 40 fotogrammiLa condizione di arresto è Duration o End timeImposta Stop condition su Screenshots con 40

FAQ

Automator è ancora incluso in macOS?

Sì. Automator si trova nella cartella Applicazioni nelle versioni attuali di macOS, insieme all'app Shortcuts.

Automator può catturare una sola finestra?

L'azione Take Screenshot non sceglie una finestra per nome. Il flag screencapture -l accetta un ID di finestra, ma macOS non ha un comando integrato che stampi gli ID delle finestre.

Perché gli screenshot di Automator si sovrascrivono?

L'azione nativa può scrivere lo stesso nome di file a ogni passaggio. Usa l'azione shell dell'opzione 2, che numera ogni fotogramma.

Automator può creare un PDF dagli screenshot?

Automator include un'azione che combina le immagini in un PDF. Il risultato non ha uno strato di testo, quindi non è un PDF ricercabile.

Posso aggiungere dopo uno strato di testo al PDF di Automator?

Sì, con un passaggio separato. Screenshot to Searchable PDF esegue il riconoscimento del testo sugli screenshot nel browser e restituisce un PDF in cui puoi cercare e copiare.

Gli screenshot possono includere il puntatore?

Il comando screencapture esclude il puntatore per impostazione predefinita. Aggiungere -C lo include, utile quando i fotogrammi documentano dove qualcuno ha cliccato. L'azione nativa Take Screenshot non offre lo stesso controllo su tutte le versioni di macOS.

Perché il loop si ferma dopo un solo passaggio?

Probabilmente l'azione Loop è impostata per chiedere conferma prima di continuare. Passa a Loop automatically e imposta un numero di volte o di minuti. Controlla anche che nessuna azione precedente sia fallita; il log mostra l'errore.

Automator può avviare il loop a un orario prestabilito?

Automator non ha un proprio scheduler. Un agente launchd o un trigger basato sul calendario può aprire l'app salvata a un orario, ma ognuno aggiunge configurazione. Per un'esecuzione che deve terminare a un orario, l'impostazione End time di Temposhot fa lo stesso come condizione di arresto.

Trasforma gli screenshot ripetibili in lavoro finito

Per esecuzioni a orario con pressioni di tasti, condizioni di arresto ed esportazione in PDF o MP4, leggi la guida alla cattura automatica oppure consulta automazione degli screenshot su Mac. Per lo stesso loop senza Automator, leggi automatizzare gli screenshot dalla riga di comando.

automatorscreenshot-automationmacosworkflows

Termini utilizzati in questa pagina: screenshot workflow

Trasforma gli screenshot ripetibili in lavoro completato

Temposhot scatta screenshot a intervalli regolari o a ogni clic ed esporta il risultato come PDF, immagini, ZIP o MP4.

Post correlati