آیا از کلیکهای مکرر برای دانلود ویدیوهای دورهای که تهیه کردهاید خسته شدهاید؟ این اسکریپت یک ربات هوشمند است که به جای شما تمام این کارهای تکراری را انجام میدهد و لیست نهایی لینکهای دانلود را در یک فایل متنی به شما تحویل میدهد.
تصور کنید میخواهید تمام ویدیوهای یک دوره آموزشی ۵۰ قسمتی را دانلود کنید. فرآیند دستی به این شکل است:
- به صفحه قسمت اول میروید.
- روی ویدیو راستکلیک کرده و "Save video as" را میزنید.
- یک نام برای آن انتخاب میکنید و منتظر دانلود میمانید.
- این کار را ۴۹ بار دیگر تکرار میکنید! 😩
این اسکریپت این فرآیند خستهکننده را به صورت خودکار و در چند ثانیه انجام میدهد. اما چگونه؟
-
قدم اول: شما نقشه را به ربات میدهید. شما آدرس URL صفحه اصلی دوره را به اسکریپت میدهید. این مانند دادن آدرس یک ساختمان به ربات است.
-
قدم دوم: ربات کلید ورود را قرض میگیرد. 🔑 به جای اینکه از شما نام کاربری و رمز عبور بپرسد (که امن نیست)، اسکریپت به صورت هوشمند و امن، کوکیهای لاگین را از مرورگر شما (کروم، فایرفاکس و...) میخواند. این کوکیها مانند یک کارت ورود موقت هستند که به ربات اجازه میدهند به بخشهای اعضای سایت دسترسی داشته باشد، بدون اینکه رمز شما را بداند.
-
قدم سوم: ربات مانند یک کاربر فوق سریع عمل میکند. ⚙️ اسکریپت یک مرورگر نامرئی و خودکار (Playwright) را در پسزمینه باز میکند. به صفحه دوره رفته و در یک چشم به هم زدن، لینک تمام صفحات مربوط به هر قسمت از آموزش را پیدا و لیست میکند.
-
قدم چهارم: ربات تمام اتاقها را همزمان بررسی میکند! ⚡ اینجاست که جادو اتفاق میافتد. ربات به جای اینکه صفحات هر قسمت را یکییکی باز کند، چندین صفحه را به صورت موازی و همزمان (Asyncio) باز میکند. در هر صفحه، مستقیماً به سراغ سورس اصلی ویدیو رفته و لینک مستقیم فایل
mp4.را پیدا میکند. -
قدم پنجم: لیست نهایی آماده است. 📋 ربات تمام لینکهای مستقیم ویدیو را که پیدا کرده، در یک فایل متنی ساده به نام
video_links.txtجمعآوری و ذخیره میکند.
نتیجه نهایی: شما یک فایل متنی تمیز و مرتب دارید که میتوانید محتوای آن را مستقیماً در نرمافزارهای مدیریت دانلود (مثل IDM, JDownloader و...) کپی کرده و تمام ویدیوها را به صورت یکجا و با حداکثر سرعت دانلود کنید.
- ** رابط کاربری زیبا:** تجربه کاربری لذتبخش در ترمینال با
richوquestionary. - ** ورود خودکار و هوشمند:** خواندن خودکار کوکیها از مرورگرهای شما برای عبور از صفحه لاگین.
- ** سرعت بالا:** پردازش موازی و غیرهمزمان (Asynchronous) قسمتها برای حداکثر سرعت.
- ** استفاده آسان:** فقط آدرس دوره را وارد کنید، بقیه کارها به صورت خودکار انجام میشود.
- ** خروجی آماده:** ذخیره تمام لینکها در فایل
video_links.txtبرای استفاده در نرمافزارهای مدیریت دانلود.
برای اجرای این پروژه، مراحل زیر را دنبال کنید:
-
پروژه را کلون کنید:
git clone https://github.com/javadSharifi/maktabkhooneh-downloader.git cd maktabkhooneh-downloader -
وابستگیها را نصب کنید: تمام کتابخانههای مورد نیاز پروژه را با دستور زیر به صورت مستقیم نصب کنید:
pip install -r requirements.txt
نکته برای کاربران حرفهای: توصیه میشود برای جلوگیری از تداخل پکیجها، این وابستگیها را در یک محیط مجازی (Virtual Environment) نصب کنید. اما برای استفاده سریع، نصب مستقیم نیز کافی است.
-
نصب درایورهای Playwright (مرحله کلیدی): این دستور مرورگرهای مورد نیاز Playwright را دانلود و نصب میکند.
playwright install
-
اسکریپت را اجرا کنید:
python3 main.py
(نام فایل اصلی را جایگزین
main.pyکنید.) -
آدرس URL دوره را وارد کنید. لینک قیمت ۱ یا یکی دیگر از قسمت ها رو وارد کنید. (
⚠️ ⚠️ لینک توضیحات دروه ارسال نکنید ) -
مرورگر خود را انتخاب کنید: از منوی تعاملی، مرورگری که با آن وارد سایت دوره شدهاید را با کلیدهای جهتنما انتخاب کنید.
هشدار: قبل از اجرای این مرحله، حتماً مرورگر مورد نظر را کاملاً ببندید تا اسکریپت بتواند به فایل کوکیهای آن دسترسی داشته باشد.
-
منتظر بمانید و لذت ببرید! اسکریپت شروع به کار کرده و پیشرفت را به صورت زنده نمایش میدهد. پس از اتمام، فایل
video_links.txtدر پوشه پروژه شما ساخته خواهد شد.
از هرگونه مشارکت در این پروژه استقبال میشود. اگر پیشنهاد یا ایدهای برای بهبود آن دارید، لطفاً یک Issue باز کنید یا یک Pull Request ارسال نمایید.
این پروژه تحت مجوز MIT منتشر شده است.