Executando script Python no Agendador de tarefas - O script não será executado

13

Eu tenho um script que desejo executar mensalmente regularmente sem que eu precise abrir e executá-lo. Mencionei todas as páginas da Web que posso encontrar no Agendador de Tarefas do Windows e segui suas instruções. No entanto, a execução do script no Agendador de tarefas abrirá apenas o script no Python e não o executará.

Na janela Executar do agendador de tarefas, tentei inserir o caminho para o script sozinho e o caminho para o script com o caminho para o meu programa Python. Também tentei inserir o caminho para o meu programa Python como o script com o meu script como argumento, conforme sugerido nesta postagem do blog . Meu script é codificado, por isso acho que não preciso adicionar argumentos.

Estou perdendo algo óbvio?


Eu estava com problemas porque estava usando o caminho para o programa Python e não a linha de comando do Python. Ou seja, eu estava usando "C: \ Python27 \ ArcGIS10.1 \ Lib \ pacotes de sites \ pythonwin \ Pythonwin.exe" quando precisei usar "C: \ Python27 \ ArcGIS10.1 \ python.exe".

Olivia
fonte
Em este post, se você ler os comentários parece que o OP foi capaz de obtê-lo para executar usando cmd como o programa eo script como o argumento.
Lando Calrissian
Obrigado. Ainda não vi este post. Vou dar uma olhada e ver se as informações nele funcionam para mim.
Olivia
E para quem perguntou, acho que tenho 32 Python em uma máquina 64.
Olivia
Então, tentei a sugestão no post que você sugeriu, mas ainda não pareço estar tendo sorte. Eu tentei usar cmd como o programa com / c C: \ Python27.exe G: \ Script.py como meus argumentos, mas ele me deu dois erros: um do Python para Win32 dizendo que não podia carregar meu script e um erro dizendo que houve um erro ao processar argumentos da linha de comandos.
Olivia
1
Se você estiver usando o ArcGIS, seu python.exe pode estar em um local como este: "C: \ Python27 \ ArcGIS10.3 \ python.exe". Verifique se o caminho do executável está correto no seu arquivo .bat.
crmackey

Respostas:

17

Eu uso as seguintes configurações para "Iniciar um programa" no agendador de tarefas. Acho melhor usar o caminho completo para o executável Python para ser seguro.

Programa / script: caminho completo para Python.exe, C:\Python27\ArcGIS10.2\python.exe

Argumentos: nome do script, script.py

Iniciar em: Localização de script.py, algo comoC:\path\to\script

Além disso, se você passar argumentos para o seu script, inclua aqueles com a seção de argumentos, separados por espaços, script.py arg1 arg2 argn

Chad Cooper
fonte
impressionante. estava preso com isso.
Prateek #
5

Sempre configurei arquivos em lote simples como este:

start C:\Python27\ArcGIS10.3\python.exe \\some_server\some_script.py

Você só quer ter certeza de que o caminho completo para o executável e o script corresponde exatamente. Se o caminho tiver espaços, será necessário colocá-lo entre aspas duplas. ( " ")

crmackey
fonte
Eu acho que é isso que eu tenho agora. Programa / script: "Python.exe" "\\ serverconection \ script.py" O Agendador de tarefas pergunta-me se eu quero transformar a conexão do servidor em um argumento, eu recuso e a tarefa não será executada. Se eu usar a conexão do servidor como argumento, o script será aberto, mas não será executado.
Olivia