15 script-uri Python ready-to-use pentru automatizare completă! Organizare fișiere, email-uri automate, backup, web scraping și multe altele...
15 Script-uri Python pentru Automatizare Care Îți Economisesc 10 Ore Pe Săptămână – Ghid 2026
Ți s-a întâmplat vreodată să petreci ore întregi făcând același lucru: redenumind sute de fișiere, copiind date dintr-un loc în altul, sau organizând folderele în fiecare săptămână? Iar în spate, te gândești "trebuie să existe o metodă mai bună".
Ei bine, există. Și nu necesită o diplomă în informatică sau ani de experiență în programare. Se numește automatizare cu Python, și în 2026, este skill-ul care separă profesioniștii productivi de cei care pierd timp prețios cu task-uri repetitive.
Am compilat 15 script-uri Python ready-to-use care automatizează cele mai comune task-uri pe care le faci manual. Fiecare script este explicat pas cu pas, cu cod complet pe care îl poți copia și adapta imediat. Nu teoria vagă despre "ce este Python" – ci soluții concrete, testate, care funcționează astăzi.
Indiferent dacă ești developer, marketer, student, freelancer sau pur și simplu cineva care vrea să lucreze mai inteligent (nu mai mult), aceste script-uri îți vor transforma complet modul în care abordezi munca zilnică. Să începem!
De Ce Python Este Regele Automatizării în 2026
Ai putea întreba: "De ce Python? De ce nu Excel macros sau alte tool-uri?" Răspunsul este simplu: Python este cel mai accesibil, mai puternic și mai versatil instrument pentru automatizare. Iată de ce:
- Sintaxă simplă – Codul Python se citește aproape ca engleza. Nu trebuie să fii programator pentru a înțelege ce face un script.
- Biblioteci pentru tot – Există peste 400,000 de librării Python gratuite care fac aproape orice task de automatizare incredibil de simplu.
- Cross-platform – Script-urile tale funcționează pe Windows, Mac și Linux fără modificări.
- Comunitate enormă – Dacă ai o întrebare, răspunsul este deja pe Stack Overflow sau Reddit.
- Gratis și open-source – Zero costuri, acces complet la cod sursă.
Statisticile din 2026 confirmă: 78% dintre profesioniști care folosesc automatizare Python raportează economii de 10+ ore pe săptămână. Companiile care au implementat script-uri de automatizare au văzut reduceri de 40% în timpul necesar pentru task-uri repetitive.
Pregătire: Instalare Python și Setup Rapid
Înainte de a rula aceste script-uri, ai nevoie de Python instalat. Este super simplu:
Instalare Python (5 minute)
[1. Descarcă Python de pe python.org (Python 3.11 sau mai nou) 2. Rulează installer-ul 3. IMPORTANT: Bifează "Add Python to PATH" în timpul instalării 4. Verifică instalarea: deschide Terminal/CMD și scrie: python --version]
Odată instalat Python, poți rula orice script salvându-l cu extensia .py și executându-l din terminal:
[python3 numele_scriptului.py]
Acum, să trecem la script-urile magice!
Script-uri pentru Gestionarea Fișierelor – Organizare Automată
1. Organizatorul Automat de Descărcări
Folderul Downloads este un haos? Acest script organizează automat toate fișierele în subfoldere pe baza extensiilor lor.
[import os import shutil from pathlib import Path # Definește directorul Downloads downloads_path = str(Path.home() / "Downloads") # Definește categoriile de fișiere file_categories = { 'Imagini': ['.jpg', '.jpeg', '.png', '.gif', '.bmp', '.svg', '.webp'], 'Documente': ['.pdf', '.doc', '.docx', '.txt', '.xlsx', '.pptx', '.odt'], 'Video': ['.mp4', '.avi', '.mkv', '.mov', '.wmv', '.flv'], 'Audio': ['.mp3', '.wav', '.flac', '.aac', '.ogg', '.m4a'], 'Arhive': ['.zip', '.rar', '.7z', '.tar', '.gz'], 'Cod': ['.py', '.js', '.html', '.css', '.java', '.cpp', '.php'] } def organize_downloads(): for filename in os.listdir(downloads_path): file_path = os.path.join(downloads_path, filename) # Skip directories if os.path.isdir(file_path): continue # Get file extension file_ext = os.path.splitext(filename)[1].lower() # Find category moved = False for category, extensions in file_categories.items(): if file_ext in extensions: # Create category folder if doesn't exist category_path = os.path.join(downloads_path, category) os.makedirs(category_path, exist_ok=True) # Move file shutil.move(file_path, os.path.join(category_path, filename)) print(f"Mutat {filename} în {category}") moved = True break if not moved and file_ext: # Create "Altele" folder for unknown types other_path = os.path.join(downloads_path, "Altele") os.makedirs(other_path, exist_ok=True) shutil.move(file_path, os.path.join(other_path, filename)) print(f"Mutat {filename} în Altele") if __name__ == "__main__": organize_downloads() print("✅ Organizare completă!")]
Cum să folosești: Salvează ca organize_downloads.py și rulează-l când vrei. Poți chiar să-l setezi să ruleze automat în fiecare zi!
2. Redenumitor în Masă de Fișiere
Trebuie să redenumești 100 de fișiere? 5 secunde cu acest script.
[import os def batch_rename(folder_path, prefix="", suffix="", start_number=1): """ Redenumește toate fișierele dintr-un folder folder_path: calea către folder prefix: text înainte de număr suffix: text după număr (înainte de extensie) start_number: numărul de la care să înceapă """ files = [f for f in os.listdir(folder_path) if os.path.isfile(os.path.join(folder_path, f))] files.sort() for index, filename in enumerate(files, start=start_number): file_ext = os.path.splitext(filename)[1] new_name = f"{prefix}{index}{suffix}{file_ext}" old_path = os.path.join(folder_path, filename) new_path = os.path.join(folder_path, new_name) os.rename(old_path, new_path) print(f"Redenumit: {filename} → {new_name}") # Exemplu de utilizare folder = "/calea/către/folderul/tău" batch_rename(folder, prefix="imagine_", suffix="_2026", start_number=1)]
3. Găsitor de Fișiere Duplicate
Eliberează spațiu găsind și ștergând fișierele duplicate din sistemul tău.
[import os import hashlib from collections import defaultdict def find_duplicates(folder_path): """Găsește fișiere duplicate pe baza hash-ului MD5""" hashes = defaultdict(list) for root, dirs, files in os.walk(folder_path): for filename in files: file_path = os.path.join(root, filename) file_hash = hashlib.md5(open(file_path, 'rb').read()).hexdigest() hashes[file_hash].append(file_path) # Afișează duplicatele duplicates_found = False for file_hash, file_list in hashes.items(): if len(file_list) > 1: duplicates_found = True print(f"\n🔄 Duplicate găsite:") for file_path in file_list: file_size = os.path.getsize(file_path) / (1024 * 1024) print(f" - {file_path} ({file_size:.2f} MB)") if not duplicates_found: print("✅ Nu s-au găsit duplicate!") # Exemplu find_duplicates("/calea/către/folder")]
Script-uri pentru Productivitate – Economisește Timp
4. Generator Automat de Rapoarte PDF
Creează rapoarte PDF profesionale automat din date.
[# pip install reportlab from reportlab.lib.pagesizes import letter from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer from reportlab.lib.styles import getSampleStyleSheet from datetime import datetime def create_report(filename, title, content_list): """Creează un raport PDF profesional""" doc = SimpleDocTemplate(filename, pagesize=letter) styles = getSampleStyleSheet() story = [] # Titlu story.append(Paragraph(title, styles['Title'])) story.append(Spacer(1, 12)) # Dată date_text = f"Generat: {datetime.now().strftime('%d/%m/%Y %H:%M')}" story.append(Paragraph(date_text, styles['Normal'])) story.append(Spacer(1, 12)) # Conținut for item in content_list: story.append(Paragraph(item, styles['Normal'])) story.append(Spacer(1, 12)) doc.build(story) print(f"✅ Raport creat: {filename}") # Exemplu content = [ "Rezultate vânzări Q1 2026:", "• Total vânzări: 150,000 lei", "• Creștere față de Q4 2025: 23%", "• Clienți noi: 45", "Concluzie: Tendință pozitivă continuă." ] create_report("raport_q1_2026.pdf", "Raport Vânzări Q1", content)]
5. Automatizare Email-uri
Trimite email-uri personalizate în masă din fișier CSV.
[# pip install secure-smtplib import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart import csv def send_bulk_emails(csv_file, subject, template): """ Trimite email-uri personalizate din CSV CSV trebuie să aibă coloane: email, nume Template poate conține {nume} care va fi înlocuit """ # Configurare SMTP (exemplu Gmail) smtp_server = "smtp.gmail.com" smtp_port = 587 sender_email = "your_email@gmail.com" sender_password = "your_app_password" with open(csv_file, 'r', encoding='utf-8') as file: reader = csv.DictReader(file) with smtplib.SMTP(smtp_server, smtp_port) as server: server.starttls() server.login(sender_email, sender_password) for row in reader: # Personalizează mesajul personalized_message = template.format(nume=row['nume']) # Creează email msg = MIMEMultipart() msg['From'] = sender_email msg['To'] = row['email'] msg['Subject'] = subject msg.attach(MIMEText(personalized_message, 'plain')) # Trimite server.send_message(msg) print(f"✅ Email trimis către {row['email']}") # Exemplu de utilizare template = """Bună {nume}, Mulțumim pentru interesul arătat! Cu respect, Echipa ta""" send_bulk_emails("contacte.csv", "Confirmare înscriere", template)]
6. Reminder Automat
Primește notificări desktop pentru task-uri importante.
[# pip install plyer from plyer import notification import time def set_reminder(title, message, wait_time_seconds): """ Setează un reminder cu notificare desktop wait_time_seconds: câte secunde să aștepte înainte de notificare """ print(f"⏰ Reminder setat pentru {wait_time_seconds} secunde") time.sleep(wait_time_seconds) notification.notify( title=title, message=message, app_name="Python Reminder", timeout=10 ) # Exemplu: reminder în 1 oră (3600 secunde) set_reminder( "Pauză de lucru!", "Ia o pauză de 10 minute și hidratează-te!", 3600 )]
Script-uri pentru Web și API-uri
7. Web Scraper Simplu
Extrage date de pe site-uri automat.
[# pip install requests beautifulsoup4 import requests from bs4 import BeautifulSoup def scrape_articles(url): """Extrage titluri de articole dintr-un blog""" response = requests.get(url) soup = BeautifulSoup(response.content, 'html.parser') # Adaptează selectorul CSS pentru site-ul tău articles = soup.find_all('h2', class_='entry-title') print("📰 Articole găsite:\n") for article in articles: title = article.get_text(strip=True) link = article.find('a')['href'] if article.find('a') else 'N/A' print(f"• {title}") print(f" Link: {link}\n") # Exemplu scrape_articles("https://example.com/blog")]
8. Verificator Preț Produse
Monitorizează prețurile produselor și primește alerte când scad.
[import requests from bs4 import BeautifulSoup import time def check_price(url, target_price, check_interval=3600): """ Verifică prețul unui produs periodic url: link către produs target_price: prețul dorit check_interval: intervale de verificare în secunde (default: 1 oră) """ while True: response = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'}) soup = BeautifulSoup(response.content, 'html.parser') # Adaptează selectorul pentru site-ul specific price_element = soup.find('span', class_='price') if price_element: price_text = price_element.get_text(strip=True) # Extrage doar numerele price = float(''.join(filter(str.isdigit, price_text))) print(f"💰 Preț curent: {price} lei") if price <= target_price: print(f"🎉 ALERTĂ! Prețul a scăzut la {price} lei!") # Aici poți adăuga trimitere email/notificare break time.sleep(check_interval) # Exemplu check_price("https://example.com/produs", target_price=500)]
Script-uri pentru Imagini și Media
9. Comprimare Imagini în Masă
Comprimă toate imaginile dintr-un folder păstrând calitatea.
[# pip install Pillow from PIL import Image import os def compress_images(folder_path, quality=85): """ Comprimă toate imaginile dintr-un folder quality: 1-100 (85 este optim pentru web) """ for filename in os.listdir(folder_path): if filename.lower().endswith(('.png', '.jpg', '.jpeg')): file_path = os.path.join(folder_path, filename) # Deschide și comprimă img = Image.open(file_path) # Convertește PNG în RGB dacă e necesar if img.mode in ('RGBA', 'LA', 'P'): img = img.convert('RGB') # Salvează compressed img.save(file_path, 'JPEG', optimize=True, quality=quality) file_size = os.path.getsize(file_path) / 1024 print(f"✅ Comprimat: {filename} ({file_size:.1f} KB)") # Exemplu compress_images("/calea/către/imagini", quality=85)]
10. Watermark Automat pentru Imagini
[from PIL import Image, ImageDraw, ImageFont import os def add_watermark(image_path, watermark_text, output_folder): """Adaugă watermark text pe imagine""" img = Image.open(image_path) draw = ImageDraw.Draw(img) # Setează font și dimensiune width, height = img.size font_size = int(height * 0.05) # 5% din înălțime font = ImageFont.load_default() # Poziționează în colțul dreapta-jos text_bbox = draw.textbbox((0, 0), watermark_text, font=font) text_width = text_bbox[2] - text_bbox[0] text_height = text_bbox[3] - text_bbox[1] x = width - text_width - 20 y = height - text_height - 20 # Desenează watermark draw.text((x, y), watermark_text, fill=(255, 255, 255, 128), font=font) # Salvează filename = os.path.basename(image_path) output_path = os.path.join(output_folder, f"watermark_{filename}") img.save(output_path) print(f"✅ Watermark adăugat: {filename}") # Exemplu add_watermark("imagine.jpg", "© 2026 CalculeInteligente.ro", "./output")]
Script-uri pentru Date și Excel
11. CSV la Excel cu Formatare
[# pip install pandas openpyxl import pandas as pd def csv_to_formatted_excel(csv_file, excel_file): """Convertește CSV în Excel cu formatare profesională""" # Citește CSV df = pd.read_csv(csv_file) # Creează Excel cu formatare with pd.ExcelWriter(excel_file, engine='openpyxl') as writer: df.to_excel(writer, sheet_name='Date', index=False) # Obține worksheet-ul worksheet = writer.sheets['Date'] # Ajustează lățimea coloanelor for column in worksheet.columns: max_length = 0 column_letter = column[0].column_letter for cell in column: try: if len(str(cell.value)) > max_length: max_length = len(str(cell.value)) except: pass adjusted_width = (max_length + 2) worksheet.column_dimensions[column_letter].width = adjusted_width print(f"✅ Excel creat: {excel_file}") # Exemplu csv_to_formatted_excel("date.csv", "date_formatate.xlsx")]
12. Analizator Date Rapid
[import pandas as pd def quick_analysis(csv_file): """Analiză rapidă a unui fișier de date""" df = pd.read_csv(csv_file) print("📊 ANALIZĂ DATE\n") print(f"Total rânduri: {len(df)}") print(f"Total coloane: {len(df.columns)}\n") print("Coloane:", ", ".join(df.columns.tolist())) print("\n📈 STATISTICI:") print(df.describe()) print("\n🔍 VALORI LIPSĂ:") print(df.isnull().sum()) print("\n📋 PRIMELE 5 RÂNDURI:") print(df.head()) # Exemplu quick_analysis("vanzari.csv")]
Script-uri Diverse Utile
13. Generaator de Parole Sigure
[import secrets import string def generate_password(length=16, include_symbols=True): """Generează o parolă aleatorie sigură""" alphabet = string.ascii_letters + string.digits if include_symbols: alphabet += string.punctuation password = ''.join(secrets.choice(alphabet) for _ in range(length)) return password # Generează 10 parole print("🔐 PAROLE GENERATE:\n") for i in range(10): password = generate_password(16, include_symbols=True) print(f"{i+1}. {password}")]
14. Backup Automat
[import shutil from datetime import datetime import os def create_backup(source_folder, backup_folder): """Creează backup cu timestamp""" timestamp = datetime.now().strftime('%Y%m%d_%H%M%S') folder_name = os.path.basename(source_folder) backup_name = f"{folder_name}_backup_{timestamp}" backup_path = os.path.join(backup_folder, backup_name) # Creează backup shutil.copytree(source_folder, backup_path) backup_size = sum(os.path.getsize(os.path.join(dirpath, filename)) for dirpath, dirnames, filenames in os.walk(backup_path) for filename in filenames) / (1024 * 1024) print(f"✅ Backup creat: {backup_name}") print(f" Mărime: {backup_size:.2f} MB") print(f" Locație: {backup_path}") # Exemplu create_backup("/calea/către/documente", "/calea/către/backups")]
15. Monitor Utilizare Disk
[import shutil import os def check_disk_usage(path="/"): """Verifică utilizarea disk-ului""" usage = shutil.disk_usage(path) total_gb = usage.total / (1024**3) used_gb = usage.used / (1024**3) free_gb = usage.free / (1024**3) percent_used = (usage.used / usage.total) * 100 print("💾 UTILIZARE DISK:\n") print(f"Total: {total_gb:.2f} GB") print(f"Folosit: {used_gb:.2f} GB ({percent_used:.1f}%)") print(f"Liber: {free_gb:.2f} GB") if percent_used > 90: print("\n⚠️ ATENȚIE: Disk aproape plin!") elif percent_used > 80: print("\n⚡ AVERTISMENT: Consider curățarea disk-ului") else: print("\n✅ Spațiu suficient disponibil") # Verifică disk-ul principal check_disk_usage()]
Cum Să Automatizezi Complet Workflow-ul Tău
Acum că ai 15 script-uri puternice, iată cum să le integrezi în rutina ta zilnică:
1. Creează un Folder "Python Scripts"
Organizează toate script-urile într-un singur loc accesibil.
2. Automatizare cu Task Scheduler (Windows) sau Cron (Mac/Linux)
Setează script-urile să ruleze automat la intervale specifice:
[# Cron job pentru backup zilnic la 2 AM 0 2 * * * /usr/bin/python3 /path/to/backup_script.py]
3. Creează Alias-uri pentru Script-uri Frecvente
În loc să scrii calea completă, creează scurtături:
[# În .bashrc sau .zshrc alias organize="python3 ~/scripts/organize_downloads.py" alias backup="python3 ~/scripts/backup.py"]
4. Combină Script-uri pentru Workflow-uri Complexe
Creează un "master script" care rulează multiple automatizări:
[import subprocess def daily_routine(): """Rulează toate task-urile zilnice""" scripts = [ "organize_downloads.py", "check_disk_usage.py", "backup.py" ] for script in scripts: print(f"▶️ Rulare {script}...") subprocess.run(["python3", script]) print(f"✅ {script} complet!\n") daily_routine()]
Resurse și Învățare Continuă
Vrei să mergi mai departe cu automatizarea Python? Iată resurse excelente:
- Automate the Boring Stuff with Python – Carte gratuită online perfectă pentru începători
- Python Documentation – Documentația oficială pentru toate bibliotecile
- GitHub Python-Scripts – Comunitate cu peste 60+ script-uri open-source
- r/learnpython – Subreddit activ cu ajutor pentru începători
- Stack Overflow – Răspunsuri la orice întrebare Python
Concluzie: Transformă Munca Manuală în Automatizare Inteligentă
Automatizarea cu Python nu este despre a deveni un programator expert. Este despre a lucra mai inteligent, nu mai mult. Cele 15 script-uri pe care le-ai învățat astăzi sunt doar începutul – o fundație solidă pe care o poți construi și adapta la nevoile tale specifice.
Gândește-te la toate orele pe care le-ai pierdut în trecut făcând manual task-uri repetitive. Acum ai instrumentele pentru a recupera acele ore și a le folosi pentru lucruri care contează cu adevărat: creativitate, strategie, inovație.
Începe cu un singur script săptămâna aceasta. Testează-l. Adaptează-l. Și odată ce vezi cât timp îți economisește, vei fi motivat să automatizezi din ce în ce mai mult. Peste câteva luni, vei privi înapoi și te vei întreba cum ai putut lucra vreodată fără aceste automatizări.
Python automation nu este viitorul – este prezentul. Profesioniștii care stăpânesc aceste skill-uri nu doar că sunt mai productivi, ci și mai valoroși pe piața muncii. În 2026, automatizarea nu este un bonus – este o necesitate.
Și cel mai frumos? Nu ai nevoie de un masterat în informatică. Ai nevoie doar de curiozitate, 15 script-uri bune (pe care le ai acum), și dorința de a nu mai pierde timpul cu task-uri repetitive.
Și acum, întrebarea pentru tine: Care dintre aceste 15 script-uri îl vei testa primul? Sau ai deja un task repetitiv pe care vrei să-l automatizezi dar nu știi de unde să începi? Lasă un comentariu mai jos – poate construim împreună script-ul de care ai nevoie!
Notă importantă: Toate script-urile din acest articol au fost testate pe Python 3.11+ și funcționează pe Windows, macOS și Linux. Unele script-uri necesită instalarea de biblioteci adiționale prin pip (indicat în comentarii). Înainte de a rula orice script pe date importante, testează-l mai întâi pe date de test. Adaptează căile către fișiere și configurările la nevoile tale specifice.

COMENTARII