
تحميل الترجمة التلقائية من يوتيوب عبر yt-dlp
الدليل الشامل: تحميل الترجمة التلقائية من يوتيوب عبر yt-dlp وتجاوز كافة العقبات على Debian
تحميل الترجمات التلقائية (Auto-generated subtitles) للفيديوهات التقنية الطويلة من يوتيوب أصبح أمراً معقداً بسبب التحديثات الأمنية المستمرة للمنصة. في هذا المقال، سنستعرض رحلة كاملة لتحميل ترجمة عربية بصيغة SRT باستخدام أداة yt-dlp على نظام دبيان (Debian 13)، مع استعراض كل عثرة تقنية وكيفية تجاوزها.
العثرة الأولى: إصدار الأداة القديم في مستودعات النظام
عادة ما نقوم بتثبيت الأدوات عبر apt، لكن يوتيوب يغير خوارزمياته أسبوعياً. النسخة الموجودة في المستودعات الرسمية (مثل إصدار 2025) تفشل في استخراج توقيع يوتيوب وتظهر أخطاء مثل nsig extraction failed.
الحل: إزالة نسخة apt وتثبيت الأداة في بيئة معزولة عبر pipx لضمان الحصول على آخر تحديث.
- إزالة النسخة القديمة:
sudo apt remove yt-dlp
- تثبيت
pipxوإعداد الأداة:
sudo apt install pipx
pipx install yt-dlp
pipx ensurepath
(يجب إعادة تشغيل الطرفية بعد هذا الأمر ليتعرف النظام على المسار الجديد).
العثرة الثانية: نقص محرك JavaScript (n-challenge)
بعد تحديث الأداة، قد يظهر خطأ n challenge solving failed. يوتيوب يرسل الآن “تحدياً برمجياً” للتحقق من أنك لست روبوتاً، مما يتطلب وجود محرك JavaScript مثبت على نظامك.
الحل: تثبيت محرك Deno الخفيف والسريع.
- تشغيل أمر التثبيت:
curl -fsSL [https://deno.land/install.sh](https://deno.land/install.sh) | sh
- سيقوم السكريبت بسؤالك عن إضافة المسار (PATH) لملف الإعدادات، اكتب
y. - قم بتحديث إعدادات الطرفية:
source ~/.bashrc
العثرة الثالثة: حظر عنوان الـ IP (HTTP Error 429)
عند كثرة المحاولات، يقوم يوتيوب بحظر اتصالك مؤقتاً وتظهر رسالة Too Many Requests.
الحل: استخدام ملف تعريف الارتباط (Cookies) لإثبات هويتك كمستخدم حقيقي.
- قم بتثبيت إضافة Get cookies.txt LOCALLY على متصفحك.
- افتح موقع يوتيوب، واستخرج ملف الكوكيز واحفظه باسم
cookies.txtفي مجلدك الشخصي.
الخطوة النهائية: الأمر الشامل والمعدل
الآن، مع امتلاك أحدث نسخة من الأداة، ومحرك Deno، وملف الكوكيز، هناك لمسة أخيرة. يوتيوب يتطلب أحياناً “مكونات عن بُعد” (Remote components) لحل التحدي بالكامل، وقد يرفض التحميل إذا طلبت ملف ترجمة بدون تحديد صيغة فيديو مقبولة.
الأمر النهائي الناجح للتحميل والتحويل المباشر إلى SRT:
yt-dlp --cookies cookies.txt --write-auto-subs --sub-lang "ar" --convert-subs srt --skip-download --remote-components ejs:github --allow-unplayable-formats "رابط_الفيديو"
شرح مفاتيح الأمر النهائي:
--write-auto-subs --sub-lang "ar": جلب الترجمة التلقائية باللغة العربية.--convert-subs srt: تحويل الملف من صيغة vtt الافتراضية إلى srt الأكثر توافقاً.--skip-download: تجاهل تحميل الفيديو والاكتفاء بالترجمة.--remote-components ejs:github: جلب سكريبتات حل التحدي البرمجي الخاصة بيوتيوب.--allow-unplayable-formats: تجاوز أخطاء جودة الفيديو بما أننا نحتاج الترجمة فقط.




Comments