Kā automatizēt uzdevumus, izmantojot Python skriptus

Ka Automatizet Uzdevumus Izmantojot Python Skriptus



Programmētāji, kodētāji un izstrādātāji var automatizēt metodes, izmantojot Python skriptus, ietaupot tām svarīgu laiku un pūles, veicot atkārtotas darbības. Python ir datorvaloda, piemēram, Java, kas labi darbojas procesu automatizācijā. Salīdzinot ar citām valodām, to ir samērā viegli apgūt. Tam ir arī liela, dinamiska kopiena un iebūvētas bibliotēkas, lai automatizētu noteiktus uzdevumus.

Python instalēšana

Pirms sākat automatizēt uzdevumus, datorā vai sistēmā instalējiet Python. Lai instalētu Python, vispirms jāapmeklē oficiālā Python vietne. Instalēšanas laikā noteikti pievienojiet Python sistēmas PATH.







  1. Izvēlieties IDE vai teksta redaktoru

Python skriptu veidošanai var izmantot jebkuru teksta redaktoru. Tomēr integrētās izstrādes vides (IDE), tostarp PyCharm, Visual Studio Code vai Jupyter Notebook, var uzlabot procesu, izmantojot tādus rīkus kā sintakses izcelšana un atkļūdošana. Tomēr šajā rakstā mēs izmantojam Notepad ++.



  1. Nosakiet uzdevumu, kas jāautomatizē

Tas var ietvert jebko, sākot no lielapjoma e-pasta sūtīšanas, atskaišu izveides, failu lejupielādes un dublēšanas.



  1. Izpētiet bibliotēkas un funkcijas

Apskatiet funkcijas un bibliotēkas, kas var automatizēt apakšuzdevumus.





  1. Uzrakstiet skriptu programmā Python

Šeit mēs saliekam visas detaļas, lai izveidotu pilnīgu darba skriptu.

  1. Uzdevums

Automatizējiet pārskatu ģenerēšanu no datiem, kas tiek glabāti izklājlapā.



  1. Python skripts

Mēs varam izmantot Python skriptu, lai nolasītu datus no izklājlapas un ģenerētu pārskatus dažādos formātos, piemēram, PDF, HTML vai CSV. Turklāt skriptu var izmantot, lai automātiski izplatītu pārskatus ieinteresētajām personām pa e-pastu vai Slack.

Lai izveidotu pārskatus, izmantojot izklājlapas datus, jāveic vairākas darbības. Mēs jums piedāvāsim vienkāršotu Python skriptu, kas izmanto Pandas bibliotēku, lai nolasītu datus no Excel izklājlapas un izveidotu CSV pārskatu. Atcerieties, ka mēs varam izmantot šo skriptu, lai izveidotu sarežģītākus pārskatus citos formātos un pēc vajadzības automatizētu e-pasta vai Slack paziņojumus.

Instalējiet nepieciešamās bibliotēkas

Pirms skripta palaišanas mums ir jāinstalē Pandas bibliotēka, ja tā vēl nav instalēta:

pip uzstādīt pandas openpyxl

Python kodam ir funkcija gener_report(), kurai ir divi argumenti: ceļš uz Excel izklājlapu, kurā ir dati par darbinieku algām, un ceļš uz CSV failu, kurā jāsaglabā pārskats.

Funkcija vispirms nolasa Excel izklājlapu Pandas DataFrame objektā. Pēc tam tā veic datu apstrādi un analīzi pēc vajadzības. Kolonnas “Alga” summu šajā gadījumā aprēķina funkcija.

Pēc tam funkcija izveido atskaites virkni, kas satur visu darbinieku kopējo algu. Visbeidzot, funkcija saglabā pārskatu CSV failā.

Koda galvenā funkcija norāda ievades Excel failu un izvades atskaites failu un pēc tam izsauc gener_report() funkciju, lai izveidotu pārskatu.

GenReport.py:
importēt pandas pd_obj
def generate_report ( emp_algas_dati, emp_algas_pārskata_fails ) :
mēģināt:
# Lasiet datus no Excel izklājlapas
df_obj = pd_obj.read_excel ( emp_algas_dati )
# Veiciet datu apstrādi un analīzi pēc vajadzības
# Vienkāršības labad pieņemsim, ka vēlamies aprēķināt kolonnas summu
alga_kopā = df_obj [ 'Alga' ] .sum ( )
# Izveidojiet pārskatu
algu_pārskats = f 'Visu darbinieku algas kopā: {salary_total}'
# Saglabājiet pārskatu CSV failā
ar atvērtu ( emp_salary_report_file, 'iekšā' ) csv_obj:
csv_obj.write ( algu_atskaite )

drukāt ( f 'Pārskats izveidots un saglabāts {emp_salary_report_file}' )
izņemot Izņēmumu piem.:
drukāt ( f 'Radās kļūda: {str(e)}' )
ja __nosaukums__ == '__galvenais__' :
# Norādiet ievades Excel failu un izvades atskaites failu
emp_algas_dati = 'input_employee_data.xlsx'
emp_salary_report_file = 'algas_summa.csv'
# Lai izveidotu pārskatu, izsauciet funkciju generate_report
ģenerēt_pārskatu ( emp_algas_dati, emp_algas_pārskata_fails )

Šeit ir dati ievades darbinieka failā:

Pārbaudi skriptu

Mums ir rūpīgi jāpārbauda skripts pēc tā uzrakstīšanas, lai nodrošinātu, ka tas darbojas, kā paredzēts. Mēs izmantojam Python kompilatoru, lai pārbaudītu automatizēto failu. Šajā gadījumā šis fails veiksmīgi ģenerē un saglabā pārskatu CSV failā.

Ieplānojiet vai iedarbiniet skriptu

Atkarībā no automatizācijas prasībām mēs varam izpildīt Python skriptu dažādos veidos:

  • Manuāla izpilde: Palaidiet skriptu manuāli, izpildot to IDE vai komandrindā, izmantojot šādu komandu: python GenerateReport.py .
  • Plānotie uzdevumi (Windows): Mēs varam palaist skriptu noteiktos laikos vai intervālos, izmantojot Windows uzdevumu plānotāju. Izmantojot Windows pakalpojumu, mēs varam arī izsaukt konkrētu notikumu.
  • Cron Jobs (Linux/macOS): Mēs varam izmantot cron darbus, lai ieplānotu skripta palaišanu noteiktos laikos Unix līdzīgās sistēmās.
  • Uz notikumu virzīts: Mēs varam aktivizēt jūsu skriptu, reaģējot uz konkrētiem notikumiem, piemēram, failu izmaiņām, izmantojot bibliotēkas, piemēram, watchdog, vai integrējot ar tīmekļa aizķerēm.

MySQL dublēšanas automatizācija, izmantojot Python

Lai automatizētu MySQL servera dublēšanas procesu pēc stundas grafika, mēs varam izmantot Python kopā ar “mysqlclient” bibliotēku, lai izveidotu savienojumu ar MySQL datu bāzi un izveidotu dublējumus, kā arī mēs varam izmantot uzdevumu plānotāju, piemēram, Cron (uz Unix bāzes sistēmas), lai palaistu Python skriptu ik pēc stundas. Šis ir Python skripts, ko varat izmantot šim nolūkam:

1. darbība. Instalējiet nepieciešamās bibliotēkas

Mums ir jāinstalē “mysqlclient” bibliotēka MySQL savienojumam. Mēs varam to instalēt, izmantojot pip:

Pip uzstādīt mysqlclient

pip uzstādīt konfigurācijas parētājs

2. darbība. Izveidojiet konfigurācijas failu

Izveidojiet teksta failu (piemēram, mysqlconfig.ini), lai saglabātu MySQL savienojuma informāciju, tostarp paroli. Tālāk ir sniegts piemērs tam, kā varētu izskatīties fails “mysqlconfig.ini”.

[ mysql ]
mySQL_DB_HOST = lokālais resursdators
mySQL_DB_USERNAME = sakne
mySQL_DB_PASSWORD = 1234. gads
mySQL_DB_DATABASE_NAME = brandsw9_data

3. darbība: pārbaudiet MySQL Bin direktoriju :

Komandai “mysqldump” jāatrodas MySQL bin direktorijā. Pārbaudiet, vai sistēmas PATH ietver bin direktoriju. Mēs varam modificēt PATH vides mainīgo, lai iekļautu MySQL tvertnes atrašanās vietu.

Operētājsistēmā Windows: mēs varam rediģēt sistēmas PATH, izvēlnē Sākt meklējot “Vides mainīgos” un mainīgajam PATH pievienojot MySQL bin direktoriju (piemēram, C:\Program Files\MySQL\MySQL Server X.X\bin).

3. darbība: uzrakstiet Python skriptu

Izveidojiet Python skriptu, piemēram, MySQLBackup.py, lai automatizētu MySQL dublēšanas procesu. Ja nepieciešams, aizstājiet vietturus ar datu bāzes savienojuma informāciju un failu ceļiem.

importa apakšprocess sp
from datetime import datetime dt_obj
importēt konfigurācijas parētāju mysql_confg
# MySQL datu bāzes savienojuma informācija
# Ielādējiet MySQL savienojuma informāciju no konfigurācijas faila
config_obj = mysql_confg.ConfigParser ( )
config_obj.read ( 'mysqlconfig.ini' ) # Ja nepieciešams, pielāgojiet ceļu
mySQL_DB_HOST = config_obj.get ( 'mysql' , 'mySQL_DB_HOST' )
mySQL_DB_USERNAME = config_obj.get ( 'mysql' , 'mySQL_DB_USERNAME' )
mySQL_DB_PASSWORD = config_obj.get ( 'mysql' , 'mySQL_DB_PASSWORD' )
mySQL_DB_DATABASE_NAME = config_obj.get ( 'mysql' , 'mySQL_DB_DATABASE_NAME' )
# Rezerves direktorijs
bk_dir = 'rezerves_direktorijs/'
# Iegūstiet pašreizējo datumu un laiku dublējuma faila nosaukumam
laikspiedoli = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Definējiet dublējuma faila nosaukumu
my_sql_bk = f 'backup_{timestamp_oj}.sql'
# MySQL dump komanda
mysql_dump_cmd = f 'mysqldump -h {mySQL_DB_HOST} -u {mySQL_DB_USERNAME} -p{mySQL_DB_PASSWORD} {mySQL_DB_DATABASE_NAME} > {bk_dir}{my_sql_bk}'

mēģināt:
# Izpildiet MySQL dump komandu, lai izveidotu dublējumu
sp.run ( mysql_dump_cmd, apvalks = Taisnība, pārbaudīt = Taisnība )
drukāt ( f 'Dublēšana ir pabeigta un saglabāta kā '{my_sql_bk}' mapē '{bk_dir}'' )
izņemot sp.CalledProcessError Tas ir:
drukāt ( f 'Kļūda, veidojot dublējumu: {str(e)}' )

4. darbība: pārbaudiet un izpildiet kodu

5. darbība: ieplānojiet skriptu, izmantojot Windows uzdevumu plānotāju

Tagad ieplānosim Python skripta automātisku palaišanu, izmantojot Windows uzdevumu plānotāju:

Palaidiet Windows uzdevumu plānotāju, izvēlnes 'Sākt' meklēšanas joslā ierakstot 'Task Scheduler' vai dialoglodziņā 'Run' ierakstot 'taskschd.msc' (Win + R).

Uzdevumu plānotāja kreisajā rūtī atlasiet “Uzdevumu plānotāja bibliotēka”.

Labajā rūtī noklikšķiniet uz “Izveidot pamatuzdevumu…”, lai atvērtu “Pamatuzdevuma izveides vedni”.

Ievadiet uzdevuma nosaukumu un aprakstu. Pēc tam nospiediet 'Tālāk'.

Kā aktivizētāja veidu izvēlieties “Katru dienu” (lai gan vēlaties to palaist katru stundu, tas ļauj iestatīt atkārtošanas intervālu). Pēc tam noklikšķiniet uz 'Tālāk'.

Norādiet dublēšanas uzdevuma sākuma datumu un laiku.

Izvēlieties “Atkārtot uzdevumu katru:” un iestatiet to uz 1 stundu.

Iestatiet ilgumu uz “1 diena”. Pēc tam noklikšķiniet uz 'Tālāk'.

Izvēlieties 'Sākt programmu' un pēc tam nospiediet 'Tālāk'.

Pārlūkojiet un atlasiet Python izpildāmo failu (python.exe), noklikšķinot uz 'Pārlūkot'.

Pārlūkojiet un atlasiet Python izpildāmo failu (python.exe), noklikšķinot uz 'Pārlūkot'.

Laukā “Pievienot argumentus” ievadiet pilnu ceļu uz savu Python skriptu (piemēram, C:\path\to\mysql_backup.py).

Laukā Sākt (neobligāti) ievadiet direktoriju, kurā ir jūsu Python skripts (piemēram, C:\path\to\).

Noklikšķiniet uz 'Tālāk'.

Pārskatiet uzdevuma iestatījumus un noklikšķiniet uz 'Pabeigt', lai izveidotu uzdevumu.

Secinājums

Mēs varam izveidot uzticamus un efektīvus automatizācijas skriptus, kas samazina darbplūsmu laiku un veltīt to svarīgākām darbībām, izmantojot Python rīkus un tā labāko praksi. Mēs sniedzām dažus piemērus, kas noteikti palīdzēs automatizēt uzdevumus, izmantojot Python skriptus.