Agendando a Execução Automática no Windows e Linux

Agendando a Execução Automática no Windows e Linux — aula do módulo Script de Automação em Python, na trilha Seus Primeiros Projetos Práticos com IA da…

Leitura de aproximadamente 4 minutos.

Módulo: Script de Automação em Python · Curso: Seus Primeiros Projetos Práticos com IA · Formação: Formação Nível Zero: Ferramentas Essenciais e Gratuitas de IA e Código

Agendando a Execução Automática no Windows e Linux

O que você vai aprender

1. O Ponto Máximo da Automação: O Fim do Clique Manual

Até aqui, você aprendeu a especificar e construir um script Python robusto que organiza arquivos e grava relatórios de log. No entanto, se você ainda precisa abrir o terminal todos os dias às 18h e digitar python organizador.py, o processo continua dependendo da sua memória e do seu tempo.

A verdadeira automação é aquela que roda em silêncio no computador ou servidor, enquanto você se dedica a outras prioridades:


+-------------------------------------------------------------+
|                CICLO DE EXECUÇÃO AGENDADA                   |
+-------------------------------------------------------------+
|                                                             |
|  [ 1. GATILHO TEMPORAL ]                                    |
|    └─ Relógio do Sistema atinge o horário (ex: Todo dia 18h)|
|                                                             |
|  [ 2. AGENDADOR DO SISTEMA ]                                |
|    └─ Windows Task Scheduler ou Linux Cron dispara comando  |
|                                                             |
|  [ 3. MOTOR PYTHON ]                                        |
|    └─ python.exe organizador.py roda em segundo plano       |
|                                                             |
|  [ 4. ATUALIZAÇÃO DO LOG ]                                  |
|    └─ execucao.log registra a conclusão da tarefa           |
|                                                             |
+-------------------------------------------------------------+

2. Agendamento no Windows: O Agendador de Tarefas

O Windows possui uma ferramenta nativa de nível empresarial chamada Agendador de Tarefas (Task Scheduler).

Passo a Passo no Windows:

1. Pressione a tecla Windows no teclado, digite Agendador de Tarefas (ou taskschd.msc) e pressione Enter. 2. No menu à direita, clique em Criar Tarefa Básica. 3. Dê um nome claro para a tarefa (exemplo: Organizador Automatico de Relatorios). 4. Escolha a frequência do Disparador: Diariamente, Semanalmente ou Ao Fazer Logon. 5. Na etapa Ação, selecione Iniciar um programa:

3. Agendamento no Linux e macOS: O Poder do Cron

Em sistemas baseados em Unix (como servidores Linux na nuvem ou macOS), o agendamento de tarefas é feito por meio do serviço Cron.

A tabela de agendamentos é editada com o comando crontab -e no terminal. Cada linha segue a sintaxe de 5 campos temporais:


# ┌───────────── minuto (0 - 59)
# │ ┌────────────── hora (0 - 23)
# │ │ ┌─────────────── dia do mês (1 - 31)
# │ │ │ ┌──────────────── mês (1 - 12)
# │ │ │ │ ┌───────────────── dia da semana (0 - 6) (Domingo = 0)
# │ │ │ │ │
  0 18 * * 1-5  cd /caminho/do/projeto && /usr/bin/python3 organizador.py

(O exemplo acima executa o script de segunda a sexta-feira, pontualmente às 18:00).

Comparativo entre os Agendadores

| Sistema Operacional | Ferramenta | Interface | Vantagem Principal | |---|---|---|---| | Windows | Agendador de Tarefas (Task Scheduler) | Gráfica e PowerShell | Fácil visualização e suporte a contas de usuário locais | | Linux / macOS | Cron (crontab) | Terminal / Texto | Ultra-leve, padrão absoluto em servidores e VPS |

4. O Script Auxiliar de Execução (executar.bat)

No Windows, uma prática muito comum para facilitar o agendamento é criar um pequeno arquivo de lote (.bat) na pasta do projeto. Ele garante que o terminal sempre entre na pasta correta antes de chamar o Python:


@echo off
cd /d "%~dp0"
python organizador.py

Com esse arquivo criado, no Agendador de Tarefas você só precisa apontar o programa diretamente para o arquivo executar.bat.

5. Armadilhas Comuns e Como Evitar

[!IMPORTANT]
**Esquecer de preencher o campo "Iniciar em" (Start In) no Windows**: Quando o Windows Task Scheduler dispara um script, por padrão ele executa a partir da pasta C:\Windows\System32. Se o campo "Iniciar em" estiver vazio, o Python tentará buscar a pasta dados_brutos/ dentro da pasta do sistema do Windows, gerando erro de arquivo não encontrado. Sempre preencha o caminho da pasta do projeto!

Exercício Prático

Vamos testar o agendamento da sua automação:

1. Crie o arquivo executar.bat: Na pasta automacao-arquivos, crie o arquivo executar.bat com o conteúdo mostrado nesta aula. 2. Teste manual do batch: Dê um duplo clique no arquivo executar.bat no seu explorador de arquivos e verifique se o script roda e fecha normalmente. 3. Crie uma tarefa de teste no Agendador: Abra o Agendador de Tarefas do Windows, crie uma tarefa básica chamada Teste Python e defina para iniciar o executar.bat. 4. Dispare manualmente a tarefa: Na lista do Agendador de Tarefas, clique com o botão direito na tarefa criada e selecione Executar. 5. Confira o log: Abra o arquivo execucao.log e confira a nova linha registrada com a data e hora do disparo do agendador!

Outras aulas do módulo