Jak automatizovat úlohy pomocí skriptů Python

Jak Automatizovat Ulohy Pomoci Skriptu Python



Programátoři, kodéři a vývojáři mohou automatizovat metody pomocí skriptů Python, což jim ušetří důležitý čas a úsilí prováděním opakujících se operací. Python je počítačový jazyk, jako je Java, který funguje dobře v automatizaci procesů. V porovnání s jinými jazyky se dá relativně snadno naučit. Má také velkou, živou komunitu a vestavěné knihovny pro automatizaci konkrétních úkolů.

Instalace Pythonu

Než začnete automatizovat úlohy, nainstalujte do počítače nebo systému Python. Chcete-li nainstalovat Python, musíte nejprve navštívit oficiální web Pythonu. Během instalace nezapomeňte přidat Python do systémové cesty PATH.







  1. Vyberte IDE nebo textový editor

K vytvoření skriptů Pythonu lze použít jakýkoli textový editor. Integrovaná vývojová prostředí (IDE), včetně PyCharm, Visual Studio Code nebo Jupyter Notebook, však mohou proces zlepšit pomocí nástrojů, jako je zvýraznění syntaxe a ladění. V tomto článku však používáme Notepad++.



  1. Určete úlohu, kterou je třeba automatizovat

To může zahrnovat cokoli od odesílání hromadných e-mailů, vytváření sestav, stahování souborů a vytváření záloh.



  1. Prozkoumejte knihovny a funkce

Podívejte se na funkce a knihovny, které mohou automatizovat dílčí úlohy.





  1. Napište skript v Pythonu

Zde shromažďujeme všechny části, abychom vytvořili kompletní pracovní scénář.

  1. Úkol

Automatizujte generování sestav z dat uložených v tabulce.



  1. Python skript

Můžeme použít skript Python ke čtení dat z tabulky a generování sestav v různých formátech, jako je PDF, HTML nebo CSV. Skript lze navíc použít k automatické distribuci zpráv zúčastněným stranám prostřednictvím e-mailu nebo Slacku.

Vytvoření sestav pomocí dat tabulky vyžaduje několik kroků. Poskytneme vám zjednodušený skript Python, který používá knihovnu Pandas ke čtení dat z tabulky Excel a vytváření sestavy CSV. Pamatujte, že na tomto skriptu můžeme stavět a vytvářet složitější sestavy v jiných formátech a automatizovat e-mailová nebo Slack upozornění podle potřeby.

Nainstalujte požadované knihovny

Před spuštěním skriptu musíme nainstalovat knihovnu Pandas, pokud ještě není nainstalována:

pip Nainstalujte pandy openpyxl

Kód Pythonu má funkci nazvanou create_report(), která přebírá dva argumenty: cestu k excelové tabulce, která obsahuje údaje o mzdách zaměstnanců, a cestu k souboru CSV, kam by se měla zpráva uložit.

Funkce nejprve načte tabulku aplikace Excel do objektu Pandas DataFrame. Poté provede zpracování a analýzu dat podle potřeby. Součet ve sloupci „Plat“ je v tomto případě vypočítán funkcí.

Dále funkce vytvoří řetězec sestavy, který obsahuje celkovou mzdu všech zaměstnanců. Nakonec funkce uloží zprávu do souboru CSV.

Hlavní funkce kódu určuje vstupní soubor aplikace Excel a soubor výstupní zprávy a poté zavolá funkci create_report() k vytvoření zprávy.

GenReport.py:
importovat pandy tak jako pd_obj
def generovat_report ( emp_salary_data, emp_salary_report_file ) :
Snaž se:
# Přečtěte si data z tabulky Excel
df_obj = pd_obj.read_excel ( emp_salary_data )
# Podle potřeby provádějte zpracování a analýzu dat
# Pro jednoduchost předpokládejme, že chceme vypočítat součet sloupce
plat_celkem = df_obj [ 'plat' ] .součet ( )
# Vytvořte zprávu
mzdová_zpráva = f 'Celkem platů všech zaměstnanců: {salary_total}'
# Uložte přehled do souboru CSV
s otevřeným ( emp_salary_report_file, 'V' ) tak jako csv_obj:
csv_obj.write ( mzdová_zpráva )

tisk ( F 'Přehled vygenerován a uložen do souboru {emp_salary_report_file}' )
kromě Výjimky tak jako např.:
tisk ( F 'Došlo k chybě: {str(e)}' )
-li __jméno__ == '__hlavní__' :
# Určete vstupní soubor aplikace Excel a soubor výstupní zprávy
emp_salary_data = 'input_employee_data.xlsx'
emp_salary_report_file = 'součet_platu.csv'
# Chcete-li vytvořit zprávu, zavolejte funkci create_report
vygenerovat_přehled ( emp_salary_data, emp_salary_report_file )

Zde jsou data ve vstupním souboru zaměstnance:

Otestujte skript

Po napsání musíme skript důkladně otestovat, abychom se ujistili, že funguje tak, jak bylo zamýšleno. K testování souboru, který automatizujeme, používáme kompilátor Pythonu. V tomto případě tento soubor úspěšně vygeneruje a uloží zprávu do souboru CSV.

Naplánujte nebo spusťte skript

V závislosti na požadavcích automatizace můžeme skript Python spustit různými způsoby:

  • Ruční provedení: Spusťte skript ručně jeho provedením v IDE nebo pomocí příkazového řádku pomocí následujícího příkazu: python GenerateReport.py .
  • Naplánované úlohy (Windows): Skript můžeme spouštět v určitých časech nebo intervalech pomocí Plánovače úloh systému Windows. Pomocí služby Windows můžeme také vyvolat konkrétní událost.
  • Cron Jobs (Linux/macOS): Můžeme použít úlohy cron k naplánování spuštění skriptu v konkrétních časech na systémech podobných Unixu.
  • Na základě událostí: Můžeme spustit váš skript v reakci na konkrétní události, jako jsou změny souborů, pomocí knihoven jako watchdog nebo integrací s webhooky.

Automatizace zálohování MySQL pomocí Pythonu

Pro automatizaci procesu zálohování serveru MySQL podle hodinového plánu můžeme použít Python v kombinaci s knihovnou „mysqlclient“ pro připojení k databázi MySQL a vytváření záloh a můžeme použít plánovač úloh, jako je Cron (na Unixu systémy) ke spouštění skriptu Python v hodinových intervalech. Následuje skript Pythonu, který můžete pro tento účel použít:

Krok 1: Nainstalujte požadované knihovny

Potřebujeme nainstalovat knihovnu „mysqlclient“ pro připojení k MySQL. Můžeme jej nainstalovat pomocí pip:

Pip Nainstalujte mysqlclient

pip Nainstalujte configparser

Krok 2: Vytvořte konfigurační soubor

Vytvořte textový soubor (např. mysqlconfig.ini) pro uložení informací o připojení k MySQL, včetně hesla. Zde je příklad toho, jak může soubor „mysqlconfig.ini“ vypadat:

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

Krok 3: Ověřte adresář MySQL Bin :

Příkaz „mysqldump“ by měl být umístěn v adresáři bin MySQL. Ověřte, že systémová PATH zahrnuje adresář bin. Můžeme upravit proměnnou prostředí PATH tak, aby zahrnovala skladové umístění MySQL.

Ve Windows: Můžeme upravit systémovou PATH tak, že prozkoumáme „Proměnné prostředí“ v nabídce „Start“ a přidáme adresář MySQL bin (např. C:\Program Files\MySQL\MySQL Server X.X\bin) do proměnné PATH.

Krok 3: Napište skript Python

Vytvořte skript Python, např. MySQLBackup.py, pro automatizaci procesu zálohování MySQL. Podle potřeby nahraďte zástupné symboly podrobnostmi o připojení k databázi a cestami k souborům.

podproces importu tak jako sp
z datetime import datetime tak jako dt_obj
import configparser tak jako mysql_confg
# Podrobnosti o připojení k databázi MySQL
# Načtěte podrobnosti připojení MySQL z konfiguračního souboru
config_obj = mysql_confg.ConfigParser ( )
config_obj.read ( 'mysqlconfig.ini' ) # V případě potřeby 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ář
bk_dir = 'záložní_adresář/'
# Získejte aktuální datum a čas pro název souboru zálohy
časová razítka = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Definujte název souboru zálohy
my_sql_bk = f 'backup_{timestamp_oj}.sql'
# Pří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}'

Snaž se:
# Pro vytvoření zálohy spusťte příkaz MySQL dump
sp.run ( mysql_dump_cmd, skořápka = Pravda, šek = Pravda )
tisk ( F 'Záloha byla dokončena a uložena jako '{my_sql_bk}' v '{bk_dir}'' )
kromě sp.CalledProcessError tak jako To je:
tisk ( F 'Chyba při vytváření zálohy: {str(e)}' )

Krok 4: Otestujte a spusťte kód

Krok 5: Naplánujte skript pomocí Plánovače úloh systému Windows

Nyní naplánujme, aby se skript Python spouštěl automaticky pomocí Plánovače úloh systému Windows:

Spusťte Plánovač úloh systému Windows zadáním „Plánovač úloh“ do vyhledávacího pole nabídky „Start“ nebo zadáním „taskschd.msc“ do dialogového okna „Spustit“ (Win + R).

V levém podokně Plánovače úloh vyberte „Knihovna plánovače úloh“.

V pravém podokně klikněte na „Vytvořit základní úlohu…“ a otevřete „Průvodce vytvořením základní úlohy“.

Zadejte název a popis úkolu. Poté stiskněte „Další“.

Jako typ spouštění zvolte „Denně“ (i když jej chcete spouštět každou hodinu, umožňuje vám to nastavit interval opakování). Poté klikněte na „Další“.

Zadejte datum a čas zahájení úlohy zálohování.

Vyberte „Opakovat úlohu každých:“ a nastavte ji na 1 hodinu.

Nastavte dobu trvání na „1 den“. Poté klikněte na „Další“.

Vyberte „Spustit program“ a poté stiskněte „Další“.

Procházejte a vyberte spustitelný soubor Python (python.exe) kliknutím na „Procházet“.

Procházejte a vyberte spustitelný soubor Python (python.exe) kliknutím na „Procházet“.

Zadejte úplnou cestu k vašemu skriptu Python (např. C:\cesta\k\mysql_backup.py) do pole „Přidat argumenty“.

Zadejte adresář, který obsahuje váš skript Python (např. C:\cesta\k\) do pole „Začít v (volitelné)“.

Klikněte na „Další“.

Zkontrolujte nastavení úlohy a kliknutím na „Dokončit“ vytvořte úlohu.

Závěr

S využitím nástrojů Pythonu a jeho osvědčených postupů dokážeme vytvořit spolehlivé a efektivní automatizační skripty, které zkrátí pracovní toky a věnují je důležitějším činnostem. Poskytli jsme několik příkladů, které vám určitě pomohou automatizovat vaše úkoly pomocí skriptů Python.