Автоматизация рутинных задач с Python: 10 примеров для разработчиков
Python – мощный инструмент для автоматизации множества задач, с которыми сталкиваются разработчики. Мы рассмотрим 10 полезных примеров, которые помогут сэкономить время и улучшить рабочий процесс.
1. Автоматическое переименование файлов в папке
Если у вас есть папка с множеством файлов, и их нужно переименовать по определенному шаблону, можно использовать библиотеку os:
import os
folder_path = "путь_к_папке"
for i, filename in enumerate(os.listdir(folder_path)):
new_name = f"file_{i}.txt"
os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_name))Курс изучения Python
Можете пройти наш бесплатный курс по изучению Python
2. Парсинг данных с веб-страниц
Библиотека BeautifulSoup помогает извлекать данные из HTML-страниц. Например, получим все заголовки новостей с сайта:
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
for headline in soup.find_all("h2"):
print(headline.text)3. Автоматическая отправка email
Можно отправлять письма автоматически с помощью smtplib:
import smtplib
server = smtplib.SMTP("smtp.example.com", 587)
server.starttls()
server.login("[email protected]", "your_password")
server.sendmail("[email protected]", "[email protected]", "Subject: Hello\n\nThis is an automated email.")
server.quit()4. Автоматическое создание резервных копий файлов
Создадим архив с важными файлами:
import shutil
shutil.make_archive("backup", "zip", "путь_к_директории")5. Автоматическое управление задачами с помощью Todo-списка
Можно создать простую систему задач и хранить их в JSON-файле:
import json
tasks = [{"task": "Написать код", "status": "incomplete"}]
with open("tasks.json", "w") as file:
json.dump(tasks, file)6. Обход капчи с помощью автоматизированного ввода
Используем pyautogui для автоматического ввода данных в браузере:
import pyautogui
pyautogui.write("example_text", interval=0.1)
pyautogui.press("enter")7. Генерация отчетов в формате PDF
Библиотека reportlab позволяет создавать PDF-документы:
from reportlab.pdfgen import canvas
c = canvas.Canvas("report.pdf")
c.drawString(100, 750, "Автоматический отчет")
c.save()Курс изучения Python
Можете пройти наш бесплатный курс по изучению Python
8. Мониторинг изменения файлов в папке
Отслеживание изменений в папке с помощью watchdog:
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
import time
class Watcher(FileSystemEventHandler):
def on_modified(self, event):
print(f"Файл изменен: {event.src_path}")
observer = Observer()
observer.schedule(Watcher(), path="путь_к_папке", recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()9. Оптимизация изображений перед загрузкой
Используем библиотеку Pillow для уменьшения размера изображений:
from PIL import Image
img = Image.open("image.jpg")
img = img.resize((800, 600))
img.save("optimized.jpg", optimize=True)10. Планирование задач с помощью cron или task scheduler
Используем schedule для выполнения задач по расписанию:
import schedule
import time
def job():
print("Выполняем задачу...")
schedule.every().day.at("10:00").do(job)
while True:
schedule.run_pending()
time.sleep(1)Заключение
Python предоставляет множество возможностей для автоматизации рутинных задач. Эти примеры помогут оптимизировать рабочий процесс, сэкономить время и сосредоточиться на более сложных задачах.
Больше интересных новостей
10 фильмов про искусственный интеллект
Подборка красивых новогодних сайтов
Low-code vs традиционная разработка: что подходит для вашего бизнеса?
Самые дорогие IT бренды мира