Pitão

Agendamento de tarefas usando Python

Agendamento de tarefas usando Python
Algumas tarefas em nossa vida são realmente demoradas e ficamos entediados fazendo essas tarefas repetidamente. Para evitar essas tarefas enfadonhas, automatizamos essas tarefas em nosso sistema. Python tem muitos módulos de automação que podem ser usados ​​para automatizar nossas coisas. Abaixo, discutiremos a importância da automação e como automatizar nossas coisas usando python. Também discutiremos alguns módulos de automação em python que ajudam a automatizar nossas coisas. Então, veremos alguns casos de uso de automação usando python. No final, veremos como podemos programar nosso script python para rodar automaticamente na inicialização.

Por que automatizamos nossas coisas

A automação de nossas coisas pode tornar nossa vida mais fácil. Tem muitas vantagens, mas algumas vantagens importantes da automação são fornecidas abaixo

Automação com Python

Existem muitas linguagens de script como bash, perl etc. para automatizar processos manuais, mas python fornece um ambiente viável para lidar com nossas necessidades. É mais fácil automatizar coisas usando a linguagem de programação Python do que em qualquer outra linguagem. Python tem muitos módulos de automação (eu.e. subprocesso, shutil, os, pyautogui, selênio etc.) que pode ser usado em automação. Veremos alguns casos de uso de como automatizamos nossas coisas.

Módulos de automação em Python

Aqui vamos discutir alguns módulos de automação em python como OS, SUBPROCESS, SHUTIL, DATETIME, SELENIUM etc. Esses módulos são usados ​​para executar comandos do sistema e também podem ser usados ​​para manipular diretórios do sistema. Esses módulos têm funções integradas que facilitam a execução de tarefas no sistema.

SO e SUBPROCESS módulos são usados ​​quase para o mesmo propósito. Algumas das funções integradas desses módulos são fornecidas abaixo

de forma similar SHUTIL módulo tem muitas funções que permitem interagir com o sistema. Algumas funções deste módulo são fornecidas abaixo

DATA HORA módulo é usado para encontrar a data e hora atuais. Também é usado para encontrar o dia da semana e muitas outras coisas. Podemos agendar nossa tarefa a qualquer hora e data usando este módulo. Nos seguintes casos de uso, vamos usá-lo para encontrar apenas a data e hora atuais.

SELÊNIO O módulo é usado para automatizar o processo de login do nosso site. Podemos fazer login automaticamente em nosso site e atualizá-lo usando SELÊNIO módulo. SELÊNIO tem muitas funções embutidas que são usadas para realizar diferentes tarefas relacionadas aos navegadores.

Como executar comandos do sistema em Python

Podemos executar comandos do sistema em python usando SO e SUBPROCESS módulos. A seguir está a sintaxe para executar o comando do sistema em python

os.sistema ('comando')

OU

subprocesso.chamar ('comando')

Por exemplo, se quisermos listar todos os arquivos e diretórios no diretório atual, vamos executar o seguinte comando no script python

os.sistema ('ls')

OU

subprocesso.ligar ('ls')

Como automatizar coisas com Python

Python pode ser usado para automatizar muitos tipos de tarefas diárias que podem economizar tempo. Aqui, veremos alguns casos de uso de automação de nossas coisas. Discutiremos como organizar os arquivos no diretório de download e como manter um backup de nossos arquivos importantes.

Organização de arquivos no diretório de download

Quando baixamos qualquer tipo de arquivo, por padrão ele vai para o diretório de download. Quando precisamos encontrar qualquer arquivo, isso pode causar problemas, pois há muitos tipos de arquivos misturados no diretório de download. Agora vamos escrever um script python para automatizar o sistema de forma que diferentes tipos de arquivos (e.g. mp3, png, xls etc.) vão para diretórios diferentes. O código completo é fornecido abaixo. Este código irá verificar cada tipo de arquivo um por um e então criará o diretório correspondente. Depois disso, ele moverá o arquivo para diretórios relacionados (e.g… o arquivo mp3 irá para o diretório 'Áudio').

importar os
import Shutil
importar data e hora
enquanto 1:
#calculating hora, minuto e segundo atuais
hoje = data.data hora.hoje()
hoje = str (hoje)
hora_atual = hoje [11:13]
current_minute = hoje [14:16]
current_sec = hoje [17:19]
# certificando-se de que o sistema organizará os arquivos às 08:00
if current_hour == '08' e current_minute == '00' e current_sec == '00':
# alterando o diretório para download
os.chdir ("path_to_Download_directory")
# salvar todos os nomes de arquivo em uma lista
arquivos = os.listdir (os.getcwd ())
para nome de arquivo em arquivos:
# ignorando diretórios
se não os.caminho.isdir (nome do arquivo):
# selecionando arquivos mp3
E se '.mp3 'no nome do arquivo:
# criando diretório 'Áudio' se não existir
se não os.caminho.existe ('Áudio'):
os.mkdir ('Áudio')
# movendo arquivo no diretório 'Áudio'
fechadura.mover (nome do arquivo, 'Áudio')
# selecionando arquivos mp4
elif '.mp4 'no nome do arquivo:
# criando diretório 'Vídeo' se não existir
se não os.caminho.existe ('Vídeo'):
os.mkdir ('Vídeo')
# movendo arquivo no diretório 'Vídeo'
fechadura.mover (nome do arquivo, 'Vídeo')
# selecionando arquivos pdf
elif '.pdf 'no nome do arquivo:
# criando diretório 'PDF' se não existir
se não os.caminho.existe ('PDF'):
os.mkdir ('PDF')
# movendo arquivo no diretório PDF
fechadura.mover (nome do arquivo, 'PDF')
# selecionando arquivos jpg e png
elif '.jpg 'no nome do arquivo ou'.png 'no nome do arquivo:
# criando diretório 'Imagens' se não existir
se não os.caminho.existe ('Imagens'):
os.mkdir ('Imagens')
# movendo arquivo no diretório 'Imagens'
fechadura.mover (nome do arquivo, 'Imagens')
# selecionando arquivos excel
elif '.xls 'no nome do arquivo:
# criando diretório 'Excel' se não existir
se não os.caminho.existe ('Excel'):
os.mkdir ('Excel')
# movendo arquivo no diretório 'Excel'
fechadura.mover (nome do arquivo, 'Excel')
# selecionando '.arquivos ppt
elif '.ppt 'no nome do arquivo:
# criar diretório 'Power Point' se não existir
se não os.caminho.existe ('Power Point'):
os.mkdir ('Power Point')
# movendo o arquivo no diretório 'Power Point'
fechadura.mover (nome do arquivo, 'Power Point')
# selecionando '.arquivos de documentos
elif '.docx 'no nome do arquivo:
# criando diretório 'Arquivo Word' se não existir
se não os.caminho.existe ('Arquivo Word'):
os.mkdir ('Arquivo Word')
# movendo o arquivo no diretório 'Arquivo do Word'
fechadura.mover (nome do arquivo, 'Arquivo do Word')

Em primeiro lugar, salvaremos a hora atual em diferentes variáveis, em seguida, verificaremos se a hora é exata '08: 00 'ou não. O programa verificará a hora todos os dias e executará o código se a hora for '08: 00 ', então o código principal será executado. No código principal, primeiro mudamos nosso diretório para o diretório de download. Aqui vamos salvar todos os nomes de arquivos em uma lista de arquivos nomeados. Agora vamos ler todos os arquivos um por um e filtrar apenas os arquivos. Iremos ignorar os diretórios, pois vamos organizar apenas os arquivos.

Agora vamos verificar cada tipo de arquivo se é mp3, mp4, jpg, pdf, xls, ppt e docx ou não. Depois de verificar cada tipo de arquivo, iremos verificar se o diretório correspondente existe ou não. Por exemplo, se o arquivo for mp3, verificaremos se o diretório 'Áudio' existe ou não. Se o diretório correspondente não existir, iremos criar o diretório. Depois de criar o diretório, moveremos nosso arquivo para esse diretório. Desta forma, todos os arquivos podem ser movidos para seus diretórios correspondentes.

Este código será executado continuamente e verificará se a hora é '08: 00 'ou não. Todos os dias às '08:00', os arquivos serão organizados automaticamente. Este código pode ser programado para ser executado sempre que você iniciar seu sistema usando o crontab. O Crontab foi explicado abaixo.

Faça backup automático de seus arquivos usando comandos do sistema

Você tem alguns arquivos importantes em um diretório relacionado ao seu projeto e de alguma forma alguns arquivos foram excluídos. Então o que você irá fazer? Nesse tipo de situação, criar um backup de seus arquivos é importante. Mas criar um backup de seus arquivos é realmente enfadonho e demorado. Esta tarefa pode ser realizada automaticamente escrevendo um script python. A seguir está o código para realizar esta tarefa. Este código irá converter todos os arquivos em um arquivo zip, então ele irá criar um diretório de backup se não existir. Depois disso, o arquivo zip será movido para o diretório de backup.

importar os
importar data e hora
enquanto 1:
# salvando o tempo atual
hoje = data.data hora.hoje()
hoje = str (hoje)
hora_atual = hoje [11:13]
current_minute = hoje [14:16]
current_sec = hoje [17:19]
# certificando-se de que o código será executado exatamente às '08: 00 '
if current_hour == '08' e current_minute == '00' e current_sec == '00':
# alterando diretório para documentos
os.chdir ('path_to_documents_directory')
# salvar todos os nomes de arquivo em uma lista
arquivos = os.listdir (os.getcwd ())
# criando diretório 'backup' se não existir
se não os.caminho.existe ('backup'):
os.mkdir ('backup')
para arquivo em arquivos:
# ignorando diretórios
se não os.caminho.isdir (arquivo):
# definindo um nome de arquivo sem espaços
original_name = arquivo
arquivo = arquivo.dividir(" ")
file_name = "".juntar (arquivo)
# defining zip_filename
zip_file_name = file_name + ".fecho eclair"
# verificar se o arquivo já existe no diretório de backup ou não
se não os.caminho.existe ('backup /' + zip_file_name):
# alterar o nome do arquivo sem espaços
os.renomear (original_name, file_name)
# criando arquivo zip usando o comando do sistema
os.sistema ("zip" + zip_file_name + "" + file_name)
#moving zip file in backup directory using system command
os.sistema ("mv" + zip_file_name + "backup")
# alterando o nome do arquivo para seu nome original
os.renomear (file_name, original_name)

Primeiramente salvaremos a hora atual nas variáveis ​​e então verificaremos se a hora é '08: 00 'ou não. Se a hora for exata '08: 00 ', o script principal será executado. No código principal, em primeiro lugar, vamos para o diretório onde estão presentes os arquivos importantes. Em seguida, salvamos todos os nomes de arquivo em uma lista. Agora vamos criar um diretório 'backup' no qual salvaremos todos os arquivos zip. Se este diretório já existir, iremos ignorar isso. Agora vamos ler cada arquivo e verificar se são arquivos ou não. Os diretórios serão ignorados e os arquivos serão considerados.

Para criar um arquivo zip de um arquivo usando o comando do sistema, em primeiro lugar vamos renomear este arquivo sem espaços como um nome de arquivo com espaços é considerado um arquivo diferente em cada espaço, quando executado em um comando do sistema usando o script python. O nome do arquivo é salvo em uma variável 'original_filename' e o arquivo é renomeado sem espaços. Agora vamos definir o nome do arquivo zip igual ao nome do arquivo com a extensão '.fecho eclair'.

Depois disso, usaremos o comando do sistema 'zip' para compactar este arquivo e então moveremos este arquivo zip para o diretório 'backup' usando o comando do sistema 'mv'. Em seguida, iremos renomear o arquivo com seu nome original com espaços nele. Este código será agendado no sistema para ser executado automaticamente sempre que você iniciar o seu sistema usando o crontab.

Automatize a execução de um script usando o Crontab

Escrevemos os scripts de automação acima. Agora queremos executar esses scripts automaticamente sempre que nosso sistema for reinicializado. Para fazer isso, adicionamos nosso script no crontab. Para adicionar tarefas ao crontab, siga os seguintes passos

Em primeiro lugar, digite o seguinte comando para editar o arquivo crontab

ubuntu @ ubuntu: ~ $ crontab -e

-e a bandeira significa abrir o crontab no modo de edição. Depois de abrir o arquivo crontab agora iremos adicionar nossa tarefa neste arquivo usando o seguinte comando no final do arquivo

@reboot python / path / to / python / script

Isto irá executar o script python automaticamente sempre que você inicializar o seu sistema.

Conclusão

Neste artigo, a importância da automação na vida prática foi explicada. Ao ler este artigo, você tem uma ideia de como pode automatizar suas tarefas simples que você faz todos os dias. Você definitivamente deve pesquisar por mais bibliotecas e funções Python para uma automação melhor e fácil.

Análise do mouse sem fio Microsoft Sculpt Touch
Recentemente li sobre o Microsoft Sculpt Touch mouse sem fio e decidi comprá-lo. Depois de usá-lo por um tempo, decidi compartilhar minha experiência ...
AppyMouse na tela Trackpad e ponteiro do mouse para tablets Windows
Os usuários de tablets costumam perder o ponteiro do mouse, especialmente quando costumam usar laptops. Os smartphones e tablets touchscreen vêm com m...
O botão do meio do mouse não funciona no Windows 10
O botão do meio do mouse ajuda você a percorrer longas páginas da web e telas com muitos dados. Se isso parar, você vai acabar usando o teclado para r...