Python skripte za automatizaciju

U svetu IT industrije, automatizacija postaje sve važniji aspekt svakodnevnog rada. Ručni procesi, koji mogu biti zamorni i skloni greškama, sve češće ustupaju mesto automatizovanim rešenjima koja štede vreme, povećavaju produktivnost i smanjuju mogućnost ljudske greške. Python, kao jedan od najpopularnijih programskih jezika, nudi moćne alate za automatizaciju različitih zadataka. U ovom članku ćemo prikazati nekoliko praktičnih primera kako se Python može koristiti za automatizaciju svakodnevnih zadataka u IT industriji.

1. Automatizacija obrade podataka iz CSV fajlova

Jedan od najčešćih zadataka u IT industriji je obrada podataka. CSV (Comma Separated Values) fajlovi su često korišćeni za razmenu i skladištenje podataka, a ručna obrada ovih fajlova može biti vremenski zahtevna. Python biblioteka pandas omogućava jednostavnu i efikasnu obradu ovakvih podataka.

Primer: Filtriranje i sumiranje podataka iz CSV fajla

Zamislite da imate CSV fajl sa podacima o prodaji proizvoda i želite da izračunate ukupan prihod za određeni proizvod.

import pandas as pd
# Učitajte CSV fajl
df = pd.read_csv('prodaja.csv')
# Filtrirajte podatke za određeni proizvod
proizvod = 'Laptop'
filtrirani_podaci = df[df['Proizvod'] == proizvod]
# Izračunajte ukupan prihod
ukupan_prihod = filtrirani_podaci['Prihod'].sum()
print(f'Ukupan prihod za {proizvod} je: {ukupan_prihod}')

Ovaj jednostavan kod automatski učitava podatke, filtrira ih prema zadatom kriterijumu i izračunava ukupan prihod, čime se štedi vreme i izbegavaju potencijalne greške koje bi nastale ručnom obradom.

2. Automatizacija slanja e-mailova

U mnogim situacijama, slanje e-mailova je deo svakodnevnog posla – bilo da se radi o slanju izveštaja, podsetnicima ili notifikacijama. Python biblioteka smtplib omogućava automatizaciju ovog procesa.

Primer: Slanje dnevnog izveštaja putem e-maila

Pretpostavimo da želite da automatski šaljete dnevni izveštaj svom timu.

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
# Konfigurišite e-mail
email = "vaša.email.adresa@example.com"
password = "vaša_lozinka"
primatelj = "primatelj@example.com"
# Kreirajte e-mail poruku
poruka = MIMEMultipart()
poruka['From'] = email
poruka['To'] = primatelj
poruka['Subject'] = "Dnevni izveštaj"
# Dodajte telo e-maila
telo = "Pozdrav, \nOvo je vaš dnevni izveštaj."
poruka.attach(MIMEText(telo, 'plain'))
# Pošaljite e-mail
server = smtplib.SMTP('smtp.example.com', 587)
server.starttls()
server.login(email, password)
text = poruka.as_string()
server.sendmail(email, primatelj, text)
server.quit()
print("E-mail je uspešno poslat!")

Ovaj kod automatski šalje e-mail sa zadatim sadržajem na određenu adresu, omogućavajući vam da obavite ovaj zadatak bez potrebe za ručnim slanjem.

3. Automatizacija preuzimanja podataka sa web stranica

Scraping podataka sa web stranica je čest zadatak, naročito kada je potrebno pratiti promene ili prikupljati podatke sa više izvora. Python biblioteka BeautifulSoup u kombinaciji sa requests omogućava jednostavno preuzimanje i obradu podataka sa web stranica.

Primer: Praćenje cene proizvoda na web stranici

Pretpostavimo da želite da pratite cenu određenog proizvoda na e-commerce sajtu.

import requests
from bs4 import BeautifulSoup
# URL stranice proizvoda
url = 'https://www.example.com/proizvod'
# Pošaljite HTTP zahtev
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
# Pronađite element koji sadrži cenu
cena = soup.find('span', {'class': 'cena'}).text
print(f'Aktuelna cena proizvoda je: {cena}')

Ovaj kod automatski preuzima cenu proizvoda sa zadate web stranice, što vam omogućava da redovno pratite promene bez potrebe za ručnim pregledanjem sajta.

4. Automatizacija zadataka na lokalnom računaru

Python može pomoći u automatizaciji zadataka na lokalnom računaru, kao što su premeštanje fajlova, kompresija, ili pokretanje drugih skripti i programa. Biblioteka os omogućava upravljanje fajlovima i direktorijumima, dok subprocess omogućava pokretanje eksternih komandi.

Primer: Automatsko premeštanje i arhiviranje fajlova

Ako želite da automatski premeštate stare fajlove u arhivu, možete koristiti sledeći Python skript:


import os
import shutil
import datetime
# Definišite putanje
izvorna_putanja = '/putanja/do/fajlova'
arhivska_putanja = '/putanja/do/arhive'
# Dobijte trenutni datum
trenutni_datum = datetime.datetime.now()
# Premeštanje fajlova starijih od 7 dana
for fajl in os.listdir(izvorna_putanja):
fajl_putanja = os.path.join(izvorna_putanja, fajl)
modifikacija_vreme = datetime.datetime.fromtimestamp(os.path.getmtime(fajl_putanja))
if (trenutni_datum - modifikacija_vreme).days > 7:
shutil.move(fajl_putanja, arhivska_putanja)
print(f'Fajl {fajl} je premešten u arhivu.')

Ovaj skript automatski premešta fajlove starije od 7 dana u arhivu, omogućavajući vam da održavate urednost na vašem računaru bez potrebe za ručnim premeštanjem fajlova.

Zaključak

Automatizacija zadataka pomoću Python skripti pruža ogromne mogućnosti za povećanje efikasnosti i produktivnosti u IT industriji. Bilo da se radi o obradi podataka, slanju e-mailova, preuzimanju podataka sa web stranica ili upravljanju fajlovima na računaru, Python nudi jednostavna rešenja koja mogu značajno olakšati vaš rad. Ako želite da unapredite svoje veštine i naučite kako da koristite Python za automatizaciju zadataka, razmislite o upisivanju na neki od kurseva na FTN Informatika, gde ćete dobiti neophodno znanje i praktično iskustvo.