Python

Planlægning af opgaver ved hjælp af Python

Planlægning af opgaver ved hjælp af Python
Nogle opgaver i vores liv er virkelig tidskrævende, og vi keder os at udføre disse opgaver gentagne gange. For at undgå disse kedelige opgaver automatiserer vi disse opgaver i vores system. Python har mange automatiseringsmoduler, som kan bruges til at automatisere vores ting. Nedenfor vil vi diskutere vigtigheden af ​​automatisering og hvordan vi automatiserer vores ting ved hjælp af python. Vi vil også diskutere nogle automatiseringsmoduler i python, som hjælper med at automatisere vores ting. Så vil vi se nogle brugstilfælde af automatisering ved hjælp af python. I slutningen vil vi se, hvordan vi kan planlægge, at vores python-script kører automatisk ved opstart.

Hvorfor automatiserer vi vores ting

Automatisering af vores ting kan gøre vores liv lettere. Det har mange fordele, men nogle vigtige fordele ved automatisering er angivet nedenfor

Automatisering med Python

Der er nogle mange script-sprog som bash, perl osv. for at automatisere manuelle processer, men python giver mulige miljøer til at håndtere vores behov. Det er lettere at automatisere ting ved hjælp af Python-programmeringssprog end på noget andet sprog. Python har mange automatiseringsmoduler (i.e. underproces, shutil, os, pyautogui, selen etc.), der kan bruges i automatisering. Vi vil se nogle brugssager om, hvordan vi automatiserer vores ting.

Automatiseringsmoduler i Python

Her vil vi diskutere nogle automatiseringsmoduler i python-lignende OS, SUBPROCESS, SHUTIL, DATETIME, SELENIUM etc. Disse moduler bruges til at udføre systemkommandoer og kan også bruges til at manipulere systemkataloger. Disse moduler har indbyggede funktioner, der gør det lettere at udføre opgaver på systemet.

OS og UNDERPROCESS moduler bruges til næsten det samme formål. Nogle af de indbyggede funktioner i disse moduler er angivet nedenfor

Tilsvarende SHUTIL modulet har mange funktioner, der gør det muligt at interagere med systemet. Nogle funktioner i dette modul er angivet nedenfor

DATO TID modul bruges til at finde den aktuelle dato og tid. Det bruges også til at finde ugedag og mange andre ting. Vi kan planlægge vores opgave til enhver tid og dato ved hjælp af dette modul. I de følgende brugssager bruger vi det til kun at finde aktuel dato og tid.

SELENIUM Modul bruges til at automatisere vores webstedslogning i processen. Vi kan automatisk logge ind på vores websted og opdatere det ved hjælp af SELENIUM modul. SELENIUM har mange indbyggede funktioner, der bruges til at udføre forskellige opgaver relateret til browsere.

Sådan udføres systemkommandoer i Python

Vi kan køre systemkommandoer i python ved hjælp af OS og UNDERPROCESS moduler. Følgende er syntaksen for at køre systemkommando i python

os.system ('kommando')

ELLER

underproces.kald ('kommando')

For eksempel, hvis vi vil liste alle filer og mapper i den aktuelle mappe, kører vi følgende kommando i python-script

os.system ('ls')

ELLER

underproces.ring ('ls')

Sådan automatiseres ting med Python

Python kan bruges til at automatisere mange slags daglige opgaver, som kan spare tid. Her vil vi se nogle brugssager til automatisering af vores ting. Vi vil diskutere arrangering af filer i downloadmappen og holde en sikkerhedskopi af vores vigtige filer.

Arrangering af filer i Download Directory

Når vi downloader enhver filtype, går den som standard ind i Download-biblioteket. Når vi skal finde en fil, kan det forårsage problemer, da der er mange typer filer blandet i Download-biblioteket. Nu skriver vi et python-script for at automatisere systemet på en sådan måde, at forskellige typer filer (f.eks.g. mp3, png, xls osv.) findes i forskellige mapper. Den komplette kode er angivet nedenfor. Denne kode kontrollerer hver filtype en efter en, så opretter den tilsvarende mappe. Herefter flyttes filen til relaterede mapper (f.eks.g ... mp3-fil går ind i 'Audio' -mappen).

importer os
importere shutil
importer datatid
mens 1:
#beregner den aktuelle time, minut og sekund
i dag = datetime.dato tid.i dag()
i dag = str (i dag)
current_hour = i dag [11:13]
current_minute = i dag [14:16]
current_sec = i dag [17:19]
# sørger for, at systemet arrangerer filer kl. 08:00
hvis current_hour == '08' og current_minute == '00' og current_sec == '00':
# skifter bibliotek for at downloade
os.chdir ("path_to_Download_directory")
# gemmer alle filnavne på en liste
filer = os.listdir (os.getcwd ())
til filnavn i filer:
# ignorerer mapper
hvis ikke os.sti.isdir (filnavn):
# valg af mp3-filer
hvis '.mp3 'i filnavn:
# opretter 'Audio' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('Audio'):
os.mkdir ('Audio')
# flytter fil i 'Audio' -mappen
shutil.flyt (filnavn, 'Audio')
# valg af mp4-filer
elif '.mp4 'i filnavn:
# opretter 'Video' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('Video'):
os.mkdir ('Video')
# flytter fil i 'Video' -mappen
shutil.flyt (filnavn, 'Video')
# valg af pdf-filer
elif '.pdf 'i filnavn:
# opretter 'PDF' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('PDF'):
os.mkdir ('PDF')
# flytter fil i PDF-bibliotek
shutil.flyt (filnavn, 'PDF')
# valg af jpg- og png-filer
elif '.jpg 'i filnavn eller'.png 'i filnavn:
# opretter 'Pictures' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('Billeder'):
os.mkdir ('Billeder')
# flytter fil i mappen 'Billeder'
shutil.flyt (filnavn, 'Billeder')
# valg af excel-filer
elif '.xls 'i filnavn:
# opretter 'Excel' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('Excel'):
os.mkdir ('Excel')
# flytter fil i 'Excel' -mappen
shutil.flyt (filnavn, 'Excel')
# vælger '.ppt 'filer
elif '.ppt 'i filnavn:
# opretter 'Power Point' -katalog, hvis den ikke findes
hvis ikke os.sti.findes ('Power Point'):
os.mkdir ('Power Point')
# flytter fil i 'Power Point' -mappen
shutil.flytte (filnavn, 'Power Point')
# vælger '.docs 'filer
elif '.docx 'i filnavn:
# opretter 'Word File' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('Word File'):
os.mkdir ('Word File')
# flytter fil i 'Word File' -mappen
shutil.flyt (filnavn, 'Word File')

Først og fremmest gemmer vi den aktuelle tid i forskellige variabler, så kontrollerer vi, om tiden er nøjagtig '08: 00 'eller ej. Programmet kontrollerer klokkeslættet hver dag og kører koden, hvis tiden er '08: 00 ', så kører hovedkoden. I hovedkoden ændrer vi først og fremmest vores bibliotek til Download-bibliotek. Her gemmer vi alle filnavne på en liste med filer. Nu vil vi læse alle filerne en efter en og kun filtrere filer ud. Vi ignorerer mapper, da vi kun vil arrangere filer.

Nu vil vi kontrollere hver filtype, om det er mp3, mp4, jpg, pdf, xls, ppt og docx eller ej. Efter kontrol af hver filtype vil vi kontrollere, om der findes en tilsvarende mappe eller ej. For eksempel, hvis filen er mp3, vil vi kontrollere 'Audio' -mappen findes eller ikke. Hvis den tilsvarende mappe ikke findes, opretter vi mappen. Efter oprettelse af mappe flytter vi vores fil i den mappe. På denne måde kan alle filerne flyttes til deres tilsvarende mapper.

Denne kode kører kontinuerligt og fortsætter med at kontrollere, om klokken er '08: 00 'eller ikke. Hver dag kl. 08.00 arrangeres filer automatisk. Denne kode kan planlægges kørt hver gang du starter dit system ved hjælp af crontab. Crontab er forklaret nedenfor.

Sikkerhedskopier automatisk dine filer ved hjælp af systemkommandoer

Du har nogle vigtige filer i en mappe, der er relateret til dit projekt, og på en eller anden måde slettes nogle filer. Hvad skal du så gøre? I denne slags situation er det vigtigt at oprette en sikkerhedskopi af dine filer. Men at oprette en sikkerhedskopi af dine filer er virkelig kedeligt og tidskrævende. Denne opgave kan udføres automatisk ved at skrive et python-script. Følgende er koden til at udføre denne opgave. Denne kode konverterer hver fil til zip-fil, så opretter den en sikkerhedskopimappe, hvis den ikke findes. Herefter flyttes zip-filen i sikkerhedskopimappen.

importer os
importer datatid
mens 1:
# sparer aktuel tid
i dag = datetime.dato tid.i dag()
i dag = str (i dag)
current_hour = i dag [11:13]
current_minute = i dag [14:16]
current_sec = i dag [17:19]
# sørger for, at koden kører nøjagtigt '08: 00 '
hvis current_hour == '08' og current_minute == '00' og current_sec == '00':
# skifter bibliotek til dokumenter
os.chdir ('path_to_documents_directory')
# gemmer alle filnavne på en liste
filer = os.listdir (os.getcwd ())
# opretter 'backup' -mappe, hvis den ikke findes
hvis ikke os.sti.findes ('backup'):
os.mkdir ('backup')
til fil i filer:
# ignorerer mapper
hvis ikke os.sti.isdir (fil):
# definerer et filnavn uden mellemrum
original_name = fil
fil = fil.split ("")
file_name = "".deltage (fil)
# definerer zip_filnavn
zip_file_name = filnavn + ".zip "
# kontrollerer, om der allerede findes en fil i sikkerhedskopimappen eller ej
hvis ikke os.sti.findes ('backup /' + zip_file_name):
# ændring af filnavn uden mellemrum
os.omdøb (originalnavn, filnavn)
# opretter zip-fil ved hjælp af systemkommandoen
os.system ("zip" + zip_filnavn + "" + filnavn)
#moving zip-fil i sikkerhedskopimappen ved hjælp af systemkommandoen
os.system ("mv" + zip_filnavn + "backup")
# skifter filnavn til dets oprindelige navn
os.omdøb (filnavn, originalnavn)

Først og fremmest gemmer vi den aktuelle tid i variabler, og derefter kontrollerer vi, om tiden er '08: 00 'eller ej. Hvis tiden er nøjagtig '08: 00 ', kører hovedscriptet. I hovedkoden går vi først og fremmest til den mappe, hvor vigtige filer er til stede. Derefter gemmer vi alle filnavne på en liste. Nu opretter vi en mappe 'backup', hvor vi gemmer alle zip-filerne. Hvis denne mappe allerede findes, vil vi ignorere dette. Nu vil vi læse hver fil og kontrollere, om det er filer eller ej. Kataloger ignoreres, og filer overvejes.

For at oprette en zip-fil af en fil ved hjælp af systemkommandoen omdøber vi først og fremmest denne fil uden mellemrum, da et filnavn med mellemrum betragtes som en anden fil i hvert rum, når vi løber ind i en systemkommando ved hjælp af python-script. Filens navn gemmes i en variabel 'original_filename', og filen omdøbes uden mellemrum. Nu definerer vi zip-filnavnet samme som filens navn med udvidelse '.zip '.

Herefter bruger vi systemkommandoen 'zip' til at zip denne fil, og derefter flytter vi denne zip-fil i 'backup' -mappen ved hjælp af systemkommandoen 'mv'. Derefter omdøber vi igen filen med dens originale navn med mellemrum i den. Denne kode vil blive planlagt på systemet til at køre hver gang automatisk, når du starter dit system ved hjælp af crontab.

Automatiser kørsel af et script ved hjælp af Crontab

Vi har skrevet automatiseringsskripterne ovenfor. Nu vil vi køre disse scripts automatisk, når vores system genstarter. For at gøre dette tilføjer vi vores script i crontab. For at tilføje en opgave i crontab gør du følgende trin

Skriv først følgende kommando for at redigere crontab-fil

ubuntu @ ubuntu: ~ $ crontab -e

-e-flag betyder åben crontab i redigeringstilstand. Efter åbning af crontab-fil vil vi nu tilføje vores opgave i denne fil ved hjælp af følgende kommando i slutningen af ​​filen

@reboot python / sti / til / python / script

Dette kører automatisk python-script hver gang du starter dit system.

Konklusion

I denne artikel er betydningen af ​​automatisering i det praktiske liv blevet forklaret. Ved at læse denne artikel får du en idé om, hvordan du kan automatisere dine enkle opgaver, som du udfører hver dag. Du bør bestemt søge efter flere pythonbiblioteker og funktioner for bedre og nem automatisering.

Top Oculus App Lab-spil
Hvis du er Oculus-headset-ejer, skal du være opmærksom på sideloading. Sideladning er processen med at installere ikke-butiksindhold på dit headset. S...
Top 10 spil at spille på Ubuntu
Windows-platform har været en af ​​de dominerende platforme til spil på grund af den enorme procentdel af spil, der udvikler sig i dag til indbygget a...
5 bedste arkadespil til Linux
I dag er computere seriøse maskiner, der bruges til spil. Hvis du ikke kan få den nye høje score, ved du hvad jeg mener. I dette indlæg vil du kende n...