یه عزیزی اومده بود پیشم و گفت: «میخوام همه آهنگهای کانال تلگراممو دانلود کنم، ولی کانالم حدود دو هزار تا آهنگ داشت و اگه دستی میخواستم این کارو انجام بدم، یه عمر طول میکشید!» 😅
اینجا بود که یه فکر به ذهنم رسید و عملی شد: یه ربات تلگرامی نوشتم که:
تمام آهنگها و ویسهای کانال رو از جدیدترین تا قدیمیترین دانلود میکنه
اسم واقعی خواننده و آهنگ رو حفظ میکنه تا همه فایلها منظم و قابل تشخیص باشن
دانلود موازی انجام میده تا سرعتش خیلی بالاتر بره و زمان منتظر موندن کم بشه
و در نهایت همه آهنگها رو داخل یه فایل ZIP جمع میکنه
برای راحتی کار، یه سرور با FastAPI راهاندازی کردم و لینک مستقیم فایل ZIP رو میده تا یکجا همه آهنگها رو دانلود کنی 🎵
ابزارها و تکنولوژیهای استفاده شده:
Python برای برنامهنویسی اصلی ربات
Telethon برای اتصال به تلگرام و دریافت پیامها و فایلها
Asyncio برای دانلود موازی فایلها و افزایش سرعت
FastAPI برای ساخت سرور ساده و ارائه لینک دانلود فایل ZIP
ZIP Library (zipfile) برای جمعآوری همه آهنگها در یک فایل
Regex و مدیریت فایلها برای ذخیرهسازی امن و مرتب فایلها
💡 نکته: این پروژه روی یه سرور مجازی ران شده. سرعت سرورم پایین بود، وگرنه کل فرایند دانلود شاید کمتر از ۲ ساعت طول میکشید. 😅
این پروژه یه نمونه عالی از ترکیب اتوماسیون، مدیریت محتوا و ابزارهای مدرن Python هست و نشون میده چطور میتونیم کارای تکراری و زمانبر رو با کمی کد و هوش مصنوعی خیلی راحتتر کنیم.
🚀 My First FastAPI Project: Simple Todo API
I’ve just completed my first project using FastAPI — a simple CRUD-based Todo API connected to a SQLite database via SQLAlchemy.
This project helped me understand the fundamentals of:
FastAPI routing and request handling
Database connection and ORM with SQLAlchemy
Pydantic models for request validation
Dependency injection and proper project structure
💡 The API supports full CRUD operations:
Create new todos
View all or single todos
Update or delete todos
I’m really enjoying how clean and fast FastAPI is to work with!
Next, I plan to build a User Authentication API to practice JWT tokens and relationships between models.
Link :
https://www.linkedin.com/feed/update/urn:li:activity:7392847460252999680/
General
About Me — Mohammad Shahrezaee
👋 Welcome to My Personal Website
Hi! I’m Mohammad ShahRezaee, a Software Engineer from Kermanshah, Iran and a graduate of Azad University.
I’m passionate about computers, programming, and building practical solutions that make life easier.
My main focus is on Python development, especially writing clean, object-oriented, and testable code. Over the years, I’ve worked on a variety of projects — from desktop GUI applications with Tkinter, to Telegram bots using Pyrogram, and web scraping tools for data extraction and automation.
I also have experience with PHP (backend and some frontend), WordPress customization & deployment, and database management using SQLite and MySQL.
Outside of coding, I’ve been blogging since 2013, and I enjoy designing simple visuals with Adobe Photoshop.
This website, shahrezaee.ir
, is where I share my portfolio, projects, and thoughts on technology.
Thanks for stopping by — feel free to explore my work and get in touch!