31 KiB
أداة تنزيل حديثة من YouTube بواجهة PySide6 نظيفة.
قم بتنزيل مقاطع الفيديو بأي جودة، واستخرج الصوت، واجلب الترجمات، والمزيد.
🌍 اقرأني اللغات
الإنجليزية: EN | العربية: AR | الألمانية: DE | الاسبانية: ES | الفرنسية: FR | الهندية: HI | البهاسا الإندونيسية: ID | إيطاليانو: IT | العنوان: JA | بولسكي: PL | البرتغالية: PT | Русский: RU | التركية: TR | 中文: ZH
التثبيت • المميزات • الاستخدام • لقطات الشاشة • استكشاف الأخطاء وإصلاحها • Sponsor • المساهمة
❓ لماذا YTSage؟
تم تصميم YTSage للمستخدمين الذين يريدون برنامج تنزيل YouTube بسيطًا وقويًا. على عكس الأدوات الأخرى، فهو يقدم:
- واجهة PySide6 نظيفة وحديثة
- التنزيلات بنقرة واحدة للفيديو والصوت والترجمات
- ميزات متقدمة مثل SponsorBlock ودمج الترجمة واختيار قائمة التشغيل
- الوضع العام الاختياري للمواقع التي تدعم yt-dlp خارج YouTube
- دعم عبر الأنظمة الأساسية وسهولة التثبيت
✨المميزات
| الميزات الأساسية | الميزات المتقدمة | ميزات إضافية |
|---|---|---|
| 🎥 تنسيق الجدول | 🚫 تكامل SponsorBlock | 🎞️ عرض FPS/HDR |
| 🎵 استخراج الصوت | 📝 تحديد ودمج الترجمة المتعددة | 🔄 التحديث التلقائي yt-dlp |
| ✨ واجهة مستخدم بسيطة | 💾 حفظ الوصف والصورة المصغرة | 🛠️ كشف FFmpeg/yt-dlp/Deno |
| 📋 دعم قائمة التشغيل والمحدد | 🚀 محدد السرعة | ⚙️ أوامر مخصصة |
| 📑 تضمين الفصول | ✂️ تقليم أقسام الفيديو | 🍪 تسجيل الدخول باستخدام ملفات تعريف الارتباط |
| 📜 تحميل التاريخ | 🔄 إطلاق اختيار القناة | 🌐 دعم الوكيل |
| 🎚️ تحويل تنسيق الصوت | 🎬 إعدادات تنسيق الفيديو | 🆙 علامة تبويب التحديث المدمجة |
| 🌍 الوضع العام | ||
| 🌍 التعريب بـ 14 لغة |
🚀التركيب
⚡ التثبيت السريع (موصى به)
تثبيت YTSage من PyPI:
pip install ytsage
🔄 تحديث التثبيت الحالي
pip install --upgrade ytsage
ثم قم بتشغيل التطبيق:
ytsage
📦 الملفات التنفيذية المعدة مسبقًا
🪟 ويندوز
| تنسيق | الوصف |
|---|---|
| المثبت القياسي | |
| مع FFmpeg المجمعة | |
| نسخة محمولة، لا تحتاج إلى تثبيت | |
| محمول مع FFmpeg، مضغوط |
🛠️ خطوات التثبيت
- مثبت EXE (
.exe): انقر نقرًا مزدوجًا فوق الملف واتبع معالج الإعداد. - النسخة المحمولة (
.zip): قم باستخراج الأرشيف إلى الموقع المطلوب وتشغيلytsage.exe. - FFmpeg Bundled: اختر إصدارات FFmpeg المجمعة إذا لم يكن FFmpeg مثبتًا على نظامك.
🐧 لينكس
| تنسيق | الوصف |
|---|---|
| حزمة دبيان | |
| صورة التطبيق المحمولة | |
| حزمة دورة في الدقيقة | |
| حزمة فلاتباك |
🛠️ خطوات التثبيت
- ديب (
.deb):sudo dpkg -i ytsage_*.deb sudo apt-get install -f # Fix missing dependencies if any - عدد الدورات في الدقيقة (
.rpm):sudo rpm -i ytsage-*.rpm - صورة التطبيق (
.AppImage):chmod +x YTSage-*.AppImage ./YTSage-*.AppImage - Flatpak: اتبع التعليمات الموجودة على Flathub أو قم بتشغيل:
flatpak install flathub io.github.oop7.ytsage
🍎 ماك
| تنسيق | الوصف |
|---|---|
| تطبيق مضغوط لأبل سيليكون | |
| مثبت صورة القرص لـ Apple Silicon |
🛠️ خطوات التثبيت
- مثبت DMG (
.dmg): انقر نقرًا مزدوجًا للتثبيت، ثم اسحبYTSage.appإلى مجلد التطبيقات. - أرشيف التطبيقات (
.zip): استخرج الملف المضغوط وانقلYTSage.appإلى مجلد التطبيقات.
ملاحظة: إذا واجهت خطأ "التطبيق تالف"، راجع macOS troubleshooting section أدناه.
💻 التثبيت اليدوي من المصدر
1. استنساخ المستودع
git clone https://github.com/oop7/YTSage.git
cd YTSage
2. تثبيت التبعيات
⚡ مع الأشعة فوق البنفسجية
uv pip install .
📦 أو بالنقطة القياسية
pip install .
3. قم بتشغيل التطبيق
python -m ytsage.main
📸 لقطات الشاشة
📖 الاستخدام
🎯 الاستخدام الأساسي
- ** إطلاق YTSage **
- الصق عنوان URL لموقع YouTube (أو استخدم الزر "لصق عنوان URL")
- انقر على "تحليل"
- حدد التنسيق:
Videoلتنزيل الفيديوAudio Onlyلاستخراج الصوت
- اختر الخيارات:
- تمكين الترجمة واختيار اللغة
- تمكين دمج الترجمة
- حفظ الصورة المصغرة
- إزالة شرائح الراعي
- حفظ الوصف
- تضمين الفصول
- حدد دليل المخرجات
- انقر على "تنزيل"
💡 دليل التنزيل الافتراضي هو مجلد "التنزيلات" الخاص بالمستخدم.
📋 تنزيل قائمة التشغيل
- لصق عنوان URL لقائمة التشغيل
- انقر على "تحليل"
- حدد مقاطع الفيديو من محدد قائمة التشغيل (اختياري، الإعداد الافتراضي هو الكل)
- اختر التنسيق/الجودة المطلوبة
- انقر على "تنزيل"
💡 يتعامل التطبيق تلقائيًا مع قائمة انتظار التنزيل
🌍 الوضع العام للمواقع غير التابعة لليوتيوب
استخدم الوضع العام عندما تريد أن يقبل YTSage عناوين URL من المواقع التي يدعمها yt-dlp، مثل Dailymotion وCBC Gem وTikTok وغيرها.
كيفية استخدامه:
- افتح
Download Settings. - تفعيل
Generic Mode. - الصق عنوان URL لفيديو أو قائمة تشغيل مدعومة غير تابعة لـ YouTube.
- اضغط على
Analyze. - اختر التنسيق وقم بتنزيله كالمعتاد.
ملاحظات:
- الوضع العام يغير فقط التحقق من صحة عنوان URL داخل YTSage. يجب أن يظل الموقع المستهدف مدعومًا بإصدار yt-dlp المثبت لديك.
- تتطلب بعض المواقع ملفات تعريف الارتباط، أو جلسة تسجيل دخول، أو وكيلًا، أو وسائط yt-dlp إضافية اعتمادًا على المستخرج.
- إذا فشل أحد المواقع، فقم بتحديث yt-dlp أولاً من علامة تبويب المحدث المضمنة قبل الإبلاغ عن المشكلة.
🧰 خيارات الوسائط والتنزيل
- خيارات الترجمة: تصفية اللغات وتضمين الترجمة في ملف الفيديو
- دمج الترجمة: دمج الترجمات في ملف الفيديو للحصول على ترجمات مضمنة
- حفظ الوصف: احفظ وصف الفيديو كملف نصي
- حفظ الصورة المصغرة: احفظ الصورة المصغرة للفيديو كملف صورة
- تضمين الفصول: تضمين علامات الفصل كبيانات وصفية لمشغلات الفيديو المتوافقة
- إزالة شرائح الجهات الراعية: قم بإزالة شرائح الجهات الراعية من الفيديو باستخدام SponsorBlock
- قص الفيديو: قم بتنزيل أجزاء محددة فقط من الفيديو عن طريق تحديد نطاقات زمنية بتنسيق
HH:MM:SS
⚙️ إعدادات الإخراج والملف
- محدد السرعة: حدد سرعة التنزيل، على سبيل المثال
500Kلـ 500 كيلو بايت/ثانية - حفظ مسار التنزيل: احفظ مسار التنزيل الافتراضي للتنزيلات المستقبلية. متوفر في إعدادات التنزيل → مسار التنزيل.
- تنسيق اسم ملف الإخراج: قم بتخصيص تنسيق اسم ملف الإخراج باستخدام متغيرات مثل
%(title)s،%(uploader)s، و%(resolution)s. متوفر في إعدادات التنزيل → تنسيق اسم الملف. - تنسيق الإخراج الإجباري: فرض تنزيلات الفيديو في تنسيق حاوية محدد مثل
mp4أوwebmأوmkv. متوفر في إعدادات التنزيل ← إعدادات تنسيق الإخراج. - تحويل تنسيق الصوت: تحويل التنزيلات الصوتية فقط إلى التنسيقات المفضلة مثل
AAC،MP3،FLAC،WAV،Opus،M4A،VorbisأوBest. متوفر في إعدادات التنزيل → إعدادات تنسيق الصوت.
🌐 الوصول والشبكة
- تسجيل الدخول باستخدام ملفات تعريف الارتباط: قم بتسجيل الدخول إلى YouTube باستخدام ملفات تعريف الارتباط للوصول إلى المحتوى الخاص.
كيفية استخدامه:
- موصى به: استخدم خيار
Extract cookies from browserالمدمج في التطبيق، ثم حدد المتصفح الخاص بك وملفًا شخصيًا بشكل اختياري. - بدلاً من ذلك، قم باستخراج ملفات تعريف الارتباط يدويًا:
أ. قم بتصدير ملفات تعريف الارتباط من متصفحك باستخدام ملحق مثل cookie-editor
ب. انسخ ملفات تعريف الارتباط بتنسيق Netscape
ج. أنشئ ملفًا باسم
cookies.txtوالصق ملفات تعريف الارتباط فيه د. حدد الملفcookies.txtفي التطبيق
- موصى به: استخدم خيار
- دعم الوكيل: استخدم خادمًا وكيلاً للتنزيلات، على سبيل المثال
http://<proxy-server>:<port> - الوضع العام: اسمح لـ YTSage بالتحليل والتنزيل من مواقع غير تابعة لـ YouTube والتي يدعمها yt-dlp. قم بتمكينه من إعدادات التنزيل → الوضع العام.
🛠️ الأدوات والصيانة
- الأوامر المخصصة: الوصول إلى ميزات yt-dlp المتقدمة عبر وسيطات سطر الأوامر
- علامة تبويب التحديث: إدارة أدوات التحديث المضمنة من مكان واحد في الخيارات المخصصة:
- تحديثات yt-dlp: تحقق من وجود تحديثات وقم بالتبديل بين قنوات الإصدار الثابت وقنوات الإصدار الليلي
- مدقق إصدار FFmpeg: تحقق من إصدار FFmpeg الخاص بك وافتح أدلة التثبيت
- تحديثات Deno: التحقق من وقت تشغيل Deno وتحديثه
- اكتشاف FFmpeg/yt-dlp/Deno: اكتشاف مسارات وإصدارات FFmpeg وyt-dlp وDeno تلقائيًا من مربع الحوار "حول".
- سجل التنزيلات: اعرض التنزيلات السابقة باستخدام الصور المصغرة والحالات من زر السجل.
🌍 التعريب
يدعم YTSage 14 لغة لسهولة الوصول إليها في جميع أنحاء العالم. اختر لغتك المفضلة من خيارات مخصصة → اللغة.
اللغات المدعومة
| اللغة | الكود | اللغة | الكود |
|---|---|---|---|
| 🇺🇸 إنجليزي | en |
🇪🇸 الاسبانية | es |
| 🇸🇦 عربي | ar |
🇫🇷 فرنسي | fr |
| 🇩🇪 ألماني | de |
🇮🇳 هندي | hi |
| 🇮🇩 إندونيسي | id |
🇮🇹 إيطالي | it |
| 🇯🇵 ياباني | ja |
🇵🇱 بولندية | pl |
| 🇧🇷 برتغالية | pt |
🇷🇺 روسي | ru |
| 🇹🇷 تركي | tr |
🇨🇳 صيني | zh |
ترجمات README
| اللغة | ملف | اللغة | ملف |
|---|---|---|---|
| 🇺🇸 إنجليزي | README.md | 🇪🇸 الاسبانية | README.es.md |
| 🇸🇦 عربي | README.ar.md | 🇫🇷 فرنسي | README.fr.md |
| 🇩🇪 ألماني | README.de.md | 🇮🇳 هندي | README.hi.md |
| 🇮🇩 إندونيسي | README.id.md | 🇮🇹 إيطالي | README.it.md |
| 🇯🇵 ياباني | README.ja.md | 🇵🇱 بولندية | README.pl.md |
| 🇧🇷 برتغالية | README.pt.md | 🇷🇺 روسي | README.ru.md |
| 🇹🇷 تركي | README.tr.md | 🇨🇳 صيني | README.zh.md |
💡 هل تريد المساهمة في الترجمة؟ راجع قسم Contributing لمساعدتنا في إضافة المزيد من اللغات!
🛠️ استكشاف الأخطاء وإصلاحها
انقر لعرض المشكلات والحلول الشائعة
- تنسيق الجدول لا يتم عرضه: قم بتحديث yt-dlp إلى الإصدار الأحدث، ثم قم بالتبديل إلى yt-dlp ليلاً.
- فشل التنزيل: تحقق من اتصالك بالإنترنت وتأكد من توفر الفيديو.
- أخطاء تنزيل محددة:
- مقاطع الفيديو الخاصة: استخدم مصادقة ملفات تعريف الارتباط للوصول إلى المحتوى الخاص.
- محتوى مقيد بالفئة العمرية: قم بتسجيل الدخول إلى حساب YouTube لعرض مقاطع الفيديو المقيدة بالفئة العمرية.
- مقاطع الفيديو المحظورة جغرافيًا: فكر في استخدام VPN لتجاوز القيود الإقليمية.
- مقاطع الفيديو المحذوفة/المحذوفة: لم يعد الفيديو متاحًا على YouTube.
- البث المباشر: لا يمكن تنزيل البث المباشر؛ انتظر حتى ينتهي الدفق.
- أخطاء الشبكة: تحقق من اتصالك بالإنترنت وحاول مرة أخرى.
- عناوين URL غير صالحة: تأكد من أن عنوان URL صحيح ومن نظام أساسي مدعوم.
- المحتوى المميز: يتطلب عضوية YouTube Premium.
- حظر حقوق الطبع والنشر: تم حظر المحتوى بسبب قيود حقوق الطبع والنشر.
- فصل ملفات الفيديو والصوت بعد التنزيل: يحدث هذا عندما يكون FFmpeg مفقودًا أو لم يتم اكتشافه. يتطلب YTSage FFmpeg لدمج تدفقات الفيديو والصوت عالية الجودة.
- الحل: تأكد من تثبيت FFmpeg وإمكانية الوصول إليه في PATH الخاص بنظامك. بالنسبة لمستخدمي Windows، الخيار الأسهل هو تنزيل الملف
YTSage-v<version>-ffmpeg.exe، والذي يأتي مرفقًا مع FFmpeg.
- الحل: تأكد من تثبيت FFmpeg وإمكانية الوصول إليه في PATH الخاص بنظامك. بالنسبة لمستخدمي Windows، الخيار الأسهل هو تنزيل الملف
🛡️ تحذير Windows Defender / مضاد الفيروسات
قد تقوم بعض برامج مكافحة الفيروسات بوضع علامة على الملفات .exe على أنها ملفات إيجابية كاذبة. هذا قيد معروف للتطبيقات المجمعة.
لماذا يحدث هذا:
- يمكن للاستدلالات المضادة للفيروسات أن تخطئ في تعريف الملفات التنفيذية المعبأة على أنها مشبوهة
** البدائل الآمنة: **
- ✅ استخدم تثبيت النقطة:
pip install ytsage(مستحسن) - ✅ البناء من المصدر: باتباع هذا guide
- ✅ أدرج التطبيق في القائمة البيضاء في برنامج مكافحة الفيروسات لديك
🍎 macOS: "التطبيق تالف ولا يمكن فتحه"
إذا رأيت هذا الخطأ على نظام التشغيل macOS Sonoma أو الإصدارات الأحدث، فستحتاج إلى إزالة سمة العزل.
- افتح الوحدة الطرفية (يمكنك العثور عليها باستخدام Spotlight).
- اكتب الأمر التالي لكن لا تضغط على Enter بعد. تأكد من تضمين المساحة في النهاية:
xattr -d com.apple.quarantine - اسحب الملف
YTSage.appمن نافذة Finder وأفلته مباشرةً في نافذة الوحدة الطرفية. سيؤدي هذا تلقائيًا إلى لصق مسار الملف الصحيح. - اضغط على Enter لتشغيل الأمر.
- حاول فتح YTSage.app مرة أخرى. من المفترض الآن أن يتم تشغيله بشكل صحيح.
مواقع التكوين (متقدمة)
- ويندوز:
%LOCALAPPDATA%\YTSage - ماك:
~/Library/Application Support/YTSage - لينكس:
~/.local/share/YTSage
💖 الراعي
إذا كان YTSage يوفر عليك الوقت، ففكر في رعاية المشروع. تساعد الرعاية في تغطية وقت التطوير والاختبار عبر الأنظمة الأساسية والتحسينات المستقبلية.
- رعاة GitHub: https://github.com/sponsors/oop7
- رابط الراعي متاح أيضًا مباشرة داخل التطبيق من مربع الحوار "حول".
👥 المساهمة
نحن نرحب بالمساهمات! إليك كيف يمكنك المساعدة:
- 🍴 شوكة المستودع
- 🌿 قم بإنشاء فرع الميزات الخاص بك:
git checkout -b feature/AmazingFeature
- 💾 قم بإجراء التغييرات:
git commit -m 'Add some AmazingFeature'
- 📤 اضغط على الفرع:
git push origin feature/AmazingFeature
- 🔄 افتح طلب السحب
🌍 المساهمة بالترجمات
- قم بتحديث ملف README المترجم المطابق (على سبيل المثال
README.es.md) - حافظ على مزامنة سلاسل التطبيق عن طريق تحرير
ytsage/languages/<code>.json - إذا كانت لغتك مفقودة، ابدأ من
README.mdوأنشئREADME.<code>.md
📂 هيكل المشروع
YTSage - هيكل المشروع
يصف هذا المستند بنية المجلد المنظم لـ YTSage.
📁 هيكل المشروع
YTSage/
├── 📁 .github/ # GitHub configuration
│ ├── 📁 ISSUE_TEMPLATE/ # Issue templates
│ │ └── 🐛-bug-report.md # Bug report template
│ ├─── 📁 workflows/ # GitHub Actions workflows
│ │ ├── build-linux.yml # Linux build workflow
│ │ ├── build-macos.yml # macOS build workflow
│ │ │── build-windows.yml # Windows build workflow
| | └── release-all.yml # Master release workflow
│ └── 📄 CI_CD_README.md # CI/CD documentation
├── 📁 branding/ # Branding assets (Screenshots, SVGs)
│ ├── 📁 icons/ # Application icons
│ ├── 📁 screenshots/ # Screenshots for documentation
│ └── 📁 svg/ # SVG assets
├── 📄 LICENSE # License file
├── 📄 pyproject.toml # Project metadata and dependencies
├── 📄 README.md # Project documentation
├── 📄 requirements.txt # Python dependencies (dev)
└── 📁 ytsage/ # Source package
├── 📁 assets/ # Runtime assets
│ ├── 📁 Icon/ # Application icons
│ └── 📁 sound/ # Audio files
├── 📁 languages/ # Localization files
│ ├── 📄 ar.json # Arabic translation
│ ├── 📄 de.json # German translation
│ ├── 📄 en.json # English translation
│ └── ... # Other languages
├── 📁 core/ # Core business logic
│ ├── 📄 __init__.py # Core package init
│ ├── 📄 ytsage_deno.py # Deno integration
│ ├── 📄 ytsage_downloader.py # Download functionality
│ ├── 📄 ytsage_ffmpeg.py # FFmpeg integration
│ ├── 📄 ytsage_utils.py # Utility functions
│ └── 📄 ytsage_yt_dlp.py # yt-dlp integration
├── 📁 gui/ # User interface components
│ ├── 📄 __init__.py # GUI package init
│ ├── 📄 ytsage_gui_main.py # Main application window
│ └── 📁 ytsage_gui_dialogs/ # Dialog classes
├── 📁 utils/ # Utility modules
│ ├── 📄 __init__.py # Utils package init
│ ├── 📄 ytsage_config_manager.py # Configuration management
│ └── 📄 ytsage_logger.py # Logging utilities
├── 📄 __init__.py # Package entry point
└── 📄 main.py # Main execution script
⭐️ تاريخ النجوم
📜 الترخيص
هذا المشروع مرخص بموجب ترخيص MIT - راجع الملف LICENSE للحصول على التفاصيل.
🙏 شكر وتقدير
إظهار الشكر والتقدير
شكرًا جزيلًا لكل من ساهم في هذا المشروع من خلال فتح مشكلة لاقتراح تحسين أو الإبلاغ عن خطأ.
| المكونات الأساسية | |
|---|---|
| yt-dlp | تحميل المحرك |
| FFmpeg | معالجة الوسائط |
| دينو | وقت التشغيل للتكامل مع yt-dlp |
| المكتبات والأطر | |
| PySide6 | إطار واجهة المستخدم الرسومية |
| الوسادة | معالجة الصور |
| الطلبات | طلبات HTTP |
| التغليف | التعامل مع الإصدار والحزمة |
| تخفيض السعر | عرض تخفيض السعر |
| loguru | التسجيل |
| الأصول والمساهمون | |
| إشعار جديد 09 من Universfield | صوت الإشعارات |
| الفيروس185 | مساهم الكود |
⚠️إخلاء المسؤولية
هذه الأداة للاستخدام الشخصي فقط. يرجى احترام شروط خدمة YouTube وحقوق منشئي المحتوى.
صُنع باستخدام ❤️ بواسطة oop7



