Ako automatizovať úlohy pomocou skriptov Python

Ako Automatizovat Ulohy Pomocou Skriptov Python



Programátori, kóderi a vývojári môžu automatizovať metódy pomocou skriptov Python, čo im šetrí dôležitý čas a námahu vykonávaním opakujúcich sa operácií. Python je počítačový jazyk, podobne ako Java, ktorý funguje dobre v automatizácii procesov. V porovnaní s inými jazykmi sa dá relatívne ľahko naučiť. Má tiež veľkú, živú komunitu a vstavané knižnice na automatizáciu konkrétnych úloh.

Inštalácia Pythonu

Skôr ako začnete automatizovať úlohy, nainštalujte si Python do počítača alebo systému. Ak chcete nainštalovať Python, musíte najprv navštíviť oficiálnu webovú stránku Pythonu. Počas inštalácie nezabudnite pridať Python do systémovej PATH.







  1. Vyberte IDE alebo textový editor

Na zostavenie skriptov Pythonu je možné použiť ľubovoľný textový editor. Integrované vývojové prostredia (IDE) vrátane PyCharm, Visual Studio Code alebo Jupyter Notebook však môžu tento proces zlepšiť pomocou nástrojov, ako je zvýrazňovanie syntaxe a ladenie. V tomto článku však používame Notepad++.



  1. Určite úlohu, ktorú je potrebné automatizovať

Môže to zahŕňať čokoľvek od odosielania hromadných e-mailov, vytvárania prehľadov, sťahovania súborov a vytvárania záloh.



  1. Preskúmajte knižnice a funkcie

Pozrite sa na funkcie a knižnice, ktoré môžu automatizovať čiastkové úlohy.





  1. Napíšte skript v Pythone

Tu zhromažďujeme všetky časti, aby sme vytvorili kompletný pracovný scenár.

  1. Úloha

Automatizujte generovanie správ z údajov uložených v tabuľkovom hárku.



  1. Python skript

Skript Python môžeme použiť na čítanie údajov z tabuľky a generovanie správ v rôznych formátoch, ako sú PDF, HTML alebo CSV. Okrem toho sa skript môže použiť na automatickú distribúciu správ zainteresovaným stranám prostredníctvom e-mailu alebo Slacku.

Vytváranie zostáv pomocou údajov z tabuľky vyžaduje viacero krokov. Poskytneme vám zjednodušený skript Python, ktorý používa knižnicu Pandas na čítanie údajov z tabuľky programu Excel a vytvorenie zostavy CSV. Pamätajte, že na tomto skripte môžeme stavať, aby sme mohli vytvárať zložitejšie prehľady v iných formátoch a automatizovať e-mailové alebo Slack upozornenia podľa potreby.

Nainštalujte požadované knižnice

Pred spustením skriptu musíme nainštalovať knižnicu Pandas, ak ešte nie je nainštalovaná:

pip Inštalácia pandy openpyxl

Kód Pythonu má funkciu s názvom create_report(), ktorá má dva argumenty: cestu k excelovej tabuľke, ktorá obsahuje údaje o mzdách zamestnancov, a cestu k súboru CSV, do ktorého sa má správa uložiť.

Funkcia najprv načíta tabuľku Excel do objektu Pandas DataFrame. Potom podľa potreby vykoná spracovanie a analýzu údajov. Súčet stĺpca „Plat“ je v tomto prípade vypočítaný funkciou.

Ďalej funkcia vytvorí reťazec zostavy, ktorý obsahuje celkovú mzdu všetkých zamestnancov. Nakoniec funkcia uloží zostavu do súboru CSV.

Hlavná funkcia kódu špecifikuje vstupný súbor Excel a výstupný súbor správy a potom volá funkciu create_report() na vytvorenie správy.

GenReport.py:
importovať pandy ako pd_obj
def create_report ( emp_salary_data, emp_salary_report_file ) :
skús:
# Prečítajte si údaje z tabuľky programu Excel
df_obj = pd_obj.read_excel ( emp_salary_data )
# Vykonajte spracovanie a analýzu údajov podľa potreby
# Pre jednoduchosť predpokladajme, že chceme vypočítať súčet stĺpca
plat_celkom = df_obj [ 'plat' ] .suma ( )
# Vytvorte prehľad
mzdový_prehľad = f 'Celkový počet platov všetkých zamestnancov: {salary_total}'
# Uložte prehľad do súboru CSV
s otvoreným ( súbor emp_salary_report_file, 'In' ) ako csv_obj:
csv_obj.write ( mzdový_prehľad )

vytlačiť ( f 'Vygenerovaný prehľad a uložený do súboru {emp_salary_report_file}' )
okrem výnimky ako napr.:
vytlačiť ( f 'Vyskytla sa chyba: {str(e)}' )
ak __meno__ == '__Hlavná__' :
# Zadajte vstupný súbor programu Excel a súbor výstupnej správy
emp_salary_data = 'input_employee_data.xlsx'
emp_salary_report_file = 'suma_platu.csv'
# Na vytvorenie zostavy zavolajte funkciu create_report
vygenerovať_správu ( emp_salary_data, emp_salary_report_file )

Tu sú údaje vo vstupnom súbore zamestnanca:

Otestujte skript

Po napísaní musíme skript dôkladne otestovať, aby sme sa uistili, že funguje podľa plánu. Na testovanie súboru, ktorý automatizujeme, používame kompilátor Pythonu. V tomto prípade tento súbor úspešne vygeneruje a uloží správu do súboru CSV.

Naplánovať alebo spustiť skript

V závislosti od požiadaviek automatizácie môžeme skript Python spustiť rôznymi spôsobmi:

  • Manuálne spustenie: Spustite skript manuálne jeho vykonaním v IDE alebo cez príkazový riadok pomocou nasledujúceho príkazu: python GenerateReport.py .
  • Naplánované úlohy (Windows): Skript môžeme spustiť v konkrétnych časoch alebo intervaloch pomocou Plánovača úloh systému Windows. Pomocou Windows Service môžeme vyvolať aj konkrétnu udalosť.
  • Cron Jobs (Linux/macOS): Úlohy cron môžeme použiť na naplánovanie spustenia skriptu v konkrétnych časoch na systémoch podobných Unixu.
  • Udalosťami riadené: Môžeme spustiť váš skript v reakcii na konkrétne udalosti, ako sú zmeny súborov, pomocou knižníc ako watchdog alebo integráciou s webhookmi.

Automatizácia zálohovania MySQL pomocou Pythonu

Na automatizáciu procesu zálohovania servera MySQL podľa hodinového plánu môžeme použiť Python v kombinácii s knižnicou „mysqlclient“ na pripojenie k databáze MySQL a vytváranie záloh a môžeme použiť plánovač úloh ako Cron (na platforme Unix systémy) na spustenie skriptu Python v hodinových intervaloch. Nasleduje skript Python, ktorý môžete použiť na tento účel:

Krok 1: Nainštalujte požadované knižnice

Potrebujeme nainštalovať knižnicu „mysqlclient“ pre pripojenie MySQL. Môžeme ho nainštalovať pomocou pip:

Pip Inštalácia mysqlclient

pip Inštalácia configparser

Krok 2: Vytvorte konfiguračný súbor

Vytvorte textový súbor (napr. mysqlconfig.ini) na uloženie informácií o pripojení MySQL vrátane hesla. Tu je príklad toho, ako môže súbor „mysqlconfig.ini“ vyzerať:

[ mysql ]
mySQL_DB_HOST = localhost
mySQL_DB_USERNAME = root
mySQL_DB_PASSWORD = 1234
mySQL_DB_DATABASE_NAME = brandsw9_data

Krok 3: Overte adresár Bin MySQL :

Príkaz „mysqldump“ by sa mal nachádzať v adresári MySQL bin. Skontrolujte, či systémová PATH obsahuje adresár bin. Môžeme upraviť premennú prostredia PATH tak, aby obsahovala skladové miesto MySQL.

V systéme Windows: Môžeme upraviť systémovú PATH tak, že preskúmame „Premenné prostredia“ v ponuke „Štart“ a do premennej PATH pridáme adresár MySQL bin (napr. C:\Program Files\MySQL\MySQL Server X.X\bin).

Krok 3: Napíšte skript Python

Vytvorte skript Python, napr. MySQLBackup.py, na automatizáciu procesu zálohovania MySQL. Podľa potreby nahraďte zástupné symboly podrobnosťami o pripojení k databáze a cestami k súborom.

podproces importu ako sp
z dátumu a času importovať dátum a čas ako dt_obj
import configparser ako mysql_confg
# Podrobnosti o pripojení k databáze MySQL
# Načítajte podrobnosti o pripojení MySQL z konfiguračného súboru
config_obj = mysql_confg.ConfigParser ( )
config_obj.read ( 'mysqlconfig.ini' ) # V prípade potreby upravte cestu
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' )
# Záložný adresár
bk_dir = 'záložný_adresár/'
# Získajte aktuálny dátum a čas súboru zálohy
časové pečiatky = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Definujte názov súboru zálohy
my_sql_bk = f 'backup_{timestamp_oj}.sql'
# Príkaz výpisu MySQL
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}'

skús:
# Vykonajte príkaz MySQL dump na vytvorenie zálohy
sp.run ( mysql_dump_cmd, škrupina = pravda, skontrolovať = Pravda )
vytlačiť ( f 'Zálohovanie bolo dokončené a uložené ako '{my_sql_bk}' v '{bk_dir}'' )
okrem sp.CalledProcessError ako To je:
vytlačiť ( f 'Chyba pri vytváraní zálohy: {str(e)}' )

Krok 4: Otestujte a spustite kód

Krok 5: Naplánujte skript pomocou Plánovača úloh systému Windows

Teraz naplánujme automatické spustenie skriptu Python pomocou Plánovača úloh systému Windows:

Spustite Plánovač úloh systému Windows zadaním „Plánovač úloh“ do vyhľadávacieho panela ponuky „Štart“ alebo zadaním „taskschd.msc“ do dialógového okna „Spustiť“ (Win + R).

V ľavom paneli Plánovača úloh vyberte možnosť „Knižnica plánovača úloh“.

V pravej časti okna kliknite na „Vytvoriť základnú úlohu…“, čím otvoríte „Sprievodcu vytvorením základnej úlohy“.

Zadajte názov a popis úlohy. Potom stlačte „Ďalej“.

Ako typ spúšťania vyberte „Denne“ (aj keď ho chcete spúšťať každú hodinu, umožňuje vám to nastaviť interval opakovania). Potom kliknite na „Ďalej“.

Zadajte dátum a čas začiatku úlohy zálohovania.

Vyberte možnosť „Opakovať úlohu každých:“ a nastavte ju na 1 hodinu.

Nastavte trvanie na „1 deň“. Potom kliknite na „Ďalej“.

Vyberte „Spustiť program“ a potom stlačte „Ďalej“.

Prejdite a vyberte spustiteľný súbor Python (python.exe) kliknutím na „Prehľadávať“.

Prejdite a vyberte spustiteľný súbor Python (python.exe) kliknutím na „Prehľadávať“.

Do poľa „Pridať argumenty“ zadajte úplnú cestu k vášmu skriptu Python (napr. C:\cesta\k\mysql_backup.py).

Zadajte adresár, ktorý obsahuje váš skript Python (napr. C:\cesta\k\) do poľa „Začať v (voliteľné)“.

Kliknite na „Ďalej“.

Skontrolujte nastavenia úlohy a kliknutím na „Dokončiť“ vytvorte úlohu.

Záver

Využitím nástrojov Pythonu a jeho osvedčených postupov dokážeme vytvoriť spoľahlivé a efektívne automatizačné skripty, ktoré skrátia pracovný čas a venujú ho dôležitejším činnostiam. Poskytli sme niekoľko príkladov, ktoré vám určite pomôžu zautomatizovať vaše úlohy pomocou skriptov Python.