A collection of ready-to-use Python scripts that automate common day-to-day tasks for IT professionals — file organization, backups, system monitoring, email sending, Excel processing, batch renaming, and much more.
Each script is independent, documented, and ready for immediate use.
| # | Script | Description |
|---|---|---|
| 1 | file_organizer.py |
Organizes files into subfolders by type (images, docs, videos...) |
| 2 | bulk_rename.py |
Batch renames files with regex support |
| 3 | folder_backup.py |
Compressed folder backup with timestamp |
| 4 | excel_merger.py |
Merges multiple Excel spreadsheets into one |
| 5 | email_sender.py |
Bulk email sending with HTML template |
| 6 | system_monitor.py |
Monitors CPU, RAM, and Disk — generates automatic log |
| 7 | duplicate_finder.py |
Finds duplicate files by MD5 hash |
| 8 | log_analyzer.py |
Analyzes log files and extracts errors/patterns |
- pathlib, shutil, os — File and directory handling
- openpyxl — Reading and writing Excel files
- smtplib — Email sending via SMTP
- psutil — CPU, RAM, and disk monitoring
- hashlib — Hashing for duplicate detection
- re — Regular expressions for batch renaming
python-automation-scripts/
├── scripts/
│ ├── file_organizer.py
│ ├── bulk_rename.py
│ ├── folder_backup.py
│ ├── excel_merger.py
│ ├── email_sender.py
│ ├── system_monitor.py
│ ├── duplicate_finder.py
│ └── log_analyzer.py
├── tests/
├── .github/workflows/ci.yml
├── requirements.txt
├── requirements-dev.txt
└── README.md
pip install -r requirements-dev.txt
ruff check . && ruff format --check .
pytest -vTests run against temporary directories with SMTP and system metrics mocked. The same checks run on every push and pull request via GitHub Actions.
git clone https://github.com/LacerdaTraderCode/python-automation-scripts.git
cd python-automation-scripts
python -m venv venv
source venv/bin/activate # Linux/Mac
# venv\Scripts\activate # Windows
pip install -r requirements.txtpython scripts/file_organizer.py ~/DownloadsCreates Documents, Images, Videos, Audio, Archives subfolders and automatically moves the files.
python scripts/bulk_rename.py ./photos --pattern "IMG_(\d+)" --replacement "photo_{1}"python scripts/folder_backup.py /source /destination/backups
# Generates: backups/backup_2026-06-06_project.zippython scripts/system_monitor.py --interval 60 --log monitor.logpython scripts/duplicate_finder.py ~/Documents- Python 3.11 or higher
Wagner Lacerda — Senior Software Engineer | Python, Backend, AI Apps, Automation & Systems
📍 Rio Grande do Sul, Brazil
Distributed under the MIT license. See LICENSE for more details.