! ملاحظة التمهيدي لم يتم تحديثه بعد
واجهة برمجة التطبيقات المستندة إلى Quart لتنزيل مقاطع الفيديو والصوت من YouTube، واسترداد البيانات الوصفية للفيديو، والتعامل مع التسميات التوضيحية. تسمح لك واجهة برمجة التطبيقات (API) هذه بالتفاعل مع محتوى YouTube برمجيًا، والاستفادة من مهام الخلفية لإدارة الملفات المؤقتة وتوفير تنزيلات فعالة.
تنزيل مقاطع الفيديو والصوت: يمكنك استرداد المحتوى بدقة ومعدلات بت محددة.
استرداد البيانات الوصفية للفيديو: احصل على تفاصيل مثل العنوان وعدد المشاهدات ومعلومات القناة.
التعامل مع التسميات التوضيحية: جلب التسميات التوضيحية وحفظها بتنسيق SRT.
التحقق من مساحة التخزين: تأكد من وجود مساحة تخزين كافية قبل التنزيل.
بايثون 3.7+
FFmpeg
تبعيات requirements.txt
استنساخ المستودع
استنساخ بوابة https://github.com/DannyAkintunde/YouTube-dl-apicd Youtube-dl-api
قم بتشغيل البرنامج النصي للتثبيت
قم بتنفيذ البرنامج النصي install.sh
لتثبيت تبعيات Python وحزم النظام:
شمود +x install.sh ./install.sh
هذا البرنامج النصي سوف:
قم بتثبيت تبعيات Python المدرجة في requirements.txt
قم بتحديث قائمة الحزم
قم بتثبيت برنامج إف إف إم بي إي جي
تحقق من تثبيت FFmpeg
اضبط إعدادات التكوين في ملف settings.py
:
DEBUG
: تمكين وضع التصحيح أو تعطيله (الافتراضي: True
).
PROXY
: قم بتكوين الوكلاء بتنسيق http_proxy,https_proxy.
AUTH
: تكوين المصادقة (الافتراضي: False
).
ACCESS_TOKEN
: رمز للوصول إلى الموارد المحمية (مطلوب إذا كان AUTH
True
).
REFRESH_TOKEN
: رمز مميز لتحديث الوصول (مطلوب إذا كان AUTH
True
).
EXPIRES
: وقت انتهاء صلاحية رمز الوصول (مطلوب إذا كان AUTH
True
).
VISITOR_DATA
: بيانات تتبع الزائرين (مطلوبة إذا كانت AUTH
True
).
PO_TOKEN
: رمز مميز لأوامر الشراء (مطلوب إذا كان AUTH
True
).
MAX_DOWNLOAD_SIZE
: الحد الأقصى لحجم الملف للتنزيلات (الافتراضي: 2 GiB
).
MAX_SEARCH_AMOUNT
: الحد الأقصى لعدد نتائج بحث الفيديو (الافتراضي: 25
).
MIN_SEARCH_AMOUNT
: الحد الأدنى لعدد نتائج بحث الفيديو (الافتراضي: 2
).
DEFAULT_SEARCH_AMOUNT
: العدد الافتراضي لنتائج بحث الفيديو (الافتراضي: 20
).
EXPIRATION_DELAY
: تأخير انتهاء صلاحية الملفات المؤقتة (الافتراضي: 1800 seconds
).
TEMP_DIR
: دليل لتخزين الملفات المؤقتة (الافتراضي: 'temp_files'
).
AUTH_DIR
: المسار لحفظ ملف المصادقة (الافتراضي: 'auth'
).
AUTH_FILE_NAME
: اسم ملف المصادقة (الافتراضي: 'temp.json'
).
CODECS
: قائمة برامج ترميز الفيديو والصوت المطلوب استخدامها (الافتراضي: 'avc1,aac'
).
الحصول على /ping
الوصف: التحقق من حالة API.
إجابة:
{ "رسالة": "بونج"}
200 OK
: {"message": "pong"}
الحصول على /search
الوصف: يبحث عن مقاطع فيديو YouTube بناءً على استعلام.
معلمات الاستعلام:
q
أو query
: استعلام بحث.
طلب مثال:
احصل على /search?q=python+tutorial
الرد على سبيل المثال:
{ { "الطول": 20، "النتائج": [ { "إمكانية الوصول": {"duration": "6 ساعات، 14 دقيقة، 7 ثواني"، "العنوان": "برنامج تعليم بايثون - دورة بايثون الكاملة للمبتدئين عن طريق البرمجة باستخدام Mosh 41,059,791 مشاهدة منذ 5 سنوات 6 ساعات، 14 دقيقة" } , "channel": {"id": "UCWv7vMbMWH4-V0ZXdmDpPBA"،"رابط": "https://www.youtube.com/channel/UCWv7vMbMWH4-V0ZXdmDpPBA"، "الاسم": "البرمجة مع Mosh"، "المصغرات": [ {"height": 68,"url": "https://yt3.ggpht.com/lCeCb47hCbXWFa0I4gi8uWDhzWSs7sjK4FDmk7lFEUMRNp6QRzIQOkwaKhwv7eNKZacRI2uR=s68-ck-c0x00ffffff-no-rj"، "width": 68 } ] }، "الوصف": [ { "نص": "تحوّل إلى "}، { "غامق": صحيح، "نص": "بايثون"}، { "text": " pro! هذا شامل "}، { "غامق": صحيح، "نص": "برنامج تعليمي"}، { "text": " يأخذك من المبتدئ إلى البطل، ويغطي الأساسيات والتعلم الآلي و..."} ]، "duration": "6:14:07"، "id": "_uQrJ0TkZlc"، "link": "https://www.youtube.com/watch?v=_uQrJ0TkZlc"، "publishedTime": "5 منذ سنوات مضت"، "richThumbnail": {"height": 180,"url": "https://i.ytimg.com/an_webp/_uQrJ0TkZlc/mqdefault_6s.webp?du=3000&sqp=CLf547cG&rs=AOn4CLCAcnB5okiLttIEMkLM9bb-3w28AQ"، "width": 320 }، "shelfTitle": null، "thumbnails": [ { "height": 202, "url": "https://i.ytimg.com/vi/_uQrJ0TkZlc/hq720.jpg?sqp=-oaymwEcCOgCEMoBSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCQfkbApoaN-_QBOuiy هرتزWJOiziEA"، "العرض": 360}، { "الارتفاع": 404، "عنوان URL": "https://i.ytimg.com/vi/_uQrJ0TkZlc/hq720.jpg?sqp=-oaymwEcCNAFEJQDSFXyq4qpAw4IARUAAIhCGAFwAcABBg==&rs=AOn4CLCpUFKfUMVNbg8mqTcZ8UdSUjpilw", "width": 720} ], "title": "Python Tutorial - دورة Python الكاملة للمبتدئين"، "type": "video"، "viewCount": {"short": "41 مليون مشاهدة"، "text": "41,059,791 مشاهدة" } }//... المزيد من النتائج هنا ], "search": "python Tutorial", "search_id": "00b5a31c-30d7-4d96-92e5-42b871062bca", "search_suggestions": ["python Tutorial"، "Python Tutorial for Beginners"، "Python Tutorial 2024" ] }
200 OK
: نتائج البحث.
400 Bad Request
: معلمة استعلام مفقودة أو غير صالحة.
500 Internal Server Error
: خطأ من جانب الخادم.
الحصول على /info
الوصف؛: استرداد البيانات الوصفية لفيديو يوتيوب.
معلمات الاستعلام:
url
: عنوان URL لمقطع فيديو YouTube.
طلب مثال:
احصل على /info?url=https://youtube.com/watch?v=dQw4w9WgXcQ
الرد على سبيل المثال:
{ "مؤلف": "ريك أستلي"، "معدلات البت": ["160 كيلوبت في الثانية"، و"128 كيلوبت في الثانية"، و"70 كيلوبت في الثانية"، و"50 كيلوبت في الثانية" ], "channel_id": "UCuAXFkgsw1L7xaCfnd5JJOw", "channel_url": "https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw", "description": "الفيديو الرسمي لأغنية "Never Gonna Give You Up" لريك آستلي. الألبوم الجديد "هل وصلنا بعد؟" تم طرحه الآن: قم بالتنزيل هنا: https://RickAstley.lnk.to/AreWe ThereYetFA/itunesnn حققت أغنية "Never Gonna Give You Up" نجاحًا عالميًا عند إصدارها في يوليو 1987، وتصدرت المخططات في 25 دولة بما في ذلك موطن ريك الأصلي في المملكة المتحدة والمملكة المتحدة. US Billboard Hot 100. كما فازت بجائزة بريت لأفضل أغنية منفردة في عام 1988. قام ستوك أيتكين ووترمان بكتابة وإنتاج الأغنية التي كانت في المقدمة الأغنية المنفردة والرئيسية من ألبوم ريك الأول "Whenever You Need Somebody" كان الألبوم في حد ذاته رقم واحد في المملكة المتحدة وسيستمر في بيع أكثر من 15 مليون نسخة في جميع أنحاء العالم. تم إخراج الفيديو الأسطوري بواسطة سايمون ويست - الذي واصل إنتاجه لاحقًا. أفلام هوليوود الرائجة مثل Con Air وLara Croft – Tomb Raider وThe Expendables 2. تجاوز الفيديو مليار مشاهدة على YouTube في 28 يوليو 2021. اشترك في قناة Rick Astley الرسمية على YouTube القناة: https://RickAstley.lnk.to/YTSubIDnn تابع ريك أستلي: فيسبوك: https://RickAstley.lnk.to/FBFollowID تويتر: https://RickAstley.lnk.to/TwitterID إنستغرام: https://RickAstley. lnk.to/InstagramID الموقع الإلكتروني: https://RickAstley.lnk.to/storeID nTikTok: https://RickAstley.lnk.to/TikTokIDnn استمع إلى Rick Astley: nSpotify: https://RickAstley.lnk.to/SpotifyID nApple Music: https://RickAstley.lnk.to/AppleMusicID nAmazon Music: https:/ /RickAstley.lnk.to/AmazonMusicID nDeezer: https://RickAstley.lnk.to/DeezerID nnLyrics:n نحن لسنا غرباء على الحب، أنت تعرف القواعد وكذلك تفعل ذلك، الالتزام الكامل هو ما أفكر فيه، لن تحصل على هذا من أي شخص آخر، أريد فقط أن أخبرك كيف أنا أنا أشعر، يجب أن أجعلك تفهم، لن أتخلى عنك أبدًا، لن أخذلك أبدًا، لن أركض وأهجرك أبدًا، لن تجعلك تبكي أبدًا، لن أقول أبدًا وداعاً، لن أقول كذبة أو أؤذيك أبداً، لقد عرفنا بعضنا البعض منذ فترة طويلة، كان قلبك يؤلمك ولكنك خجول جداً من قول ذلك، في داخلنا كلانا يعرف ما يحدث، نعرف اللعبة وسنلعبها، وإذا سألتني كيف أنا أشعر، لا تقل لي أنك أعمى جدًا بحيث لا يمكن رؤيتك، لن أتخلى عنك أبدًا، لن أخذلك أبدًا، لن أركض وأهجرك أبدًا، لن أجعلك أبدًا بكاءلن أقول وداعًا أبدًالن أكذب أبدًا وأؤذيك#RickAstley #NeverGonnaGiveYouUp #WheneverYouNeedSomebody #OfficialMusicVideo", "id": "dQw4w9WgXcQ", "keywords": ["rick astley"،"Never Gonna Give You Up"،"nggyu" ""لن أتخلى أبدًا عن كلمات الأغاني""، و"ريك توول"، و"ريك رول"، و"ريك آستلي". Official"، "rickrolled"، "أغنية Fortnite"، "حدث Fortnite"، "رقصة Fortnite"، "Fortnite لن أتخلى عنك أبدًا"، "rick roll"، "rickrolling"، "rick rolling"، "لن أعطيك أبدًا" up"، "موسيقى الثمانينيات"، "ريك آستلي الجديد"، "فيديو رسوم متحركة"، "ريك رول"، "أغاني ميمي"، "لن أتخلى عن كلمات الأغاني أبدًا"، "ريك آستلي 2022"، "لن أخذلك أبدًا" "رسوم متحركة"، "ريك رولز 2022"، "لن أتخلى عنك أبدًا". كاريوكي" ]، "الطول": 212، "تاريخ_النشر": فارغ، "القرارات": ["1080p"، "720p"، "480p"، "360p"، "240p"، "144p" ], "subtitles": ["ar"], "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg", "title": "ريك آستلي - لن أتخلى عنك أبدًا ( الفيديو الموسيقي الرسمي)"، "url": {"audio": { "128 كيلو بايت في الثانية": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezpJa hzv8S&itag=140&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=7c&mm=31%2C2 9&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu =1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZFtz4stuPKtFQJJZUbJtbt6KJJdElaNlI6w &spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw&vp rv=1&svpuc=1&mime=audio%2Fmp4&ns=LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=3433 605&dur=212.091&lmt=1717047821006373&mt=1727598776&fvip=4&keepalive=yes&fexp=51299 152%2C51300760&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei%2Cip %2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2 Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Ci nitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlGwVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3ZHpSl -MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&pot=MnRLRTG8kBazMEt9RGwvFceBv40KENnpHt lDrguGDKni7A-azrTC0L_GYy7Pz-fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFbgS jNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRQIhALzVUs_1ZBhAU4vl 4-_gWy8D_IuAVQZJzFanrawDMKOsAiAGBw-Q385K5JzdWj80j9eKH3yKDR0xsKxZTyKPU2Ubkg%3D%3D"، "160 كيلو بايت في الثانية": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezpJa hzv8S&itag=251&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=7c&mm=31%2C2 9&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&si u=1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZFtz4stuPKtFQJJZUbJtbt6KJJdElaNlI6 w&spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw& vprv=1&svpuc=1&mime=audio%2Fwebm&ns=LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=3 437753&dur=212.061&lmt=1717047822556748&mt=1727598776&fvip=4&keepalive=yes&fexp=5 1299152%2C51300760&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei% 2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cm ime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cp l%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlGwVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX 3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&pot=MnRLRTG8kBazMEt9RGwvFceBv40K ENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz-fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRX OkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRAIgRgmVXNz6G XZTa8wFsnP1g7VTKkAinxQ2MeL4L7_PpUUCIHgo1DpARUjGV3QpFS06_Q9xdzrUmYnQWyWm0VhX-HFS"، "50 كيلوبت في الثانية": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezpJa hzv8S&itag=249&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=7c&mm=31%2C2 9&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&siu =1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZFtz4stuPKtFQJJZUbJtbt6KJJdElaNlI6w &spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw&vp rv=1&svpuc=1&mime=audio%2Fwebm&ns=LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen=123 2413&dur=212.061&lmt=1717047819209140&mt=1727598776&fvip=4&keepalive=yes&fexp=5129 9152%2C51300760&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei%2Ci p%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime %2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2 Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlGwVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3ZHp Sl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&pot=MnRLRTG8kBazMEt9RGwvFceBv40KENnp HtlDrguGDKni7A-azrTC0L_GYy7Pz-fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRXOkQFb gSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRgIhANYw5Elp9cly-p k9fZtviQxozUwSbmeyiPSX7xxOHywGAiEAoHiFDUhUA-S4m-WjPNnlnSXp65opUramacG4gcucmFg%3D"، "70 كيلو بايت في الثانية": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezpJ ahzv8S&itag=250&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=7c&mm=31%2C 29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&s iu=1&bui=AXLXGFTLtpYeBi-WkfbOrD6x11PgTTzzR3XccdPZFtz4stuPKtFQJJZUbJtbt6KJJdElaNlI 6w&spc=54MbxZ-8cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuzECw &vprv=1&svpuc=1&mime=audio%2Fwebm&ns=LcPciQPCIlyTAh4bUR1Ry3oQ&rqh=1&gir=yes&clen= 1630086&dur=212.061&lmt=1717047822840442&mt=1727598776&fvip=4&keepalive=yes&fexp= 51299152%2C51300760&c=WEB&sefc=1&txp=4532434&n=PBkHSDz29n0qdg&sparams=expire%2Cei %2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui%2Cspc%2Cvprv%2Csvpuc%2C mime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2C pl%2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlGwVYx5b6wKFXGaJnWz5hPoyu2V1jAiB X3ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&pot=MnRLRTG8kBazMEt9RGwvFceBv40 KENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz-fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKR XOkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRAIgcZBnQIuS U46Et4rVk1EP96LN12X6zEturr49Dt3IdtgCICaL6e5X_7qoN782XgA94aCWl9APN7sqdpZDfnSQ3n4a" }،"فيديو": { "360 بكسل": "https://rr2---sn-nx5s7n76.googlevideo.com/videoplayback?expire=1727620629&ei=tBH5ZuXtPK32sfIPmpfRaA&ip=34.213.214.55&id=o-AFciugVQSUntvlu-EtzrcBd4W06EaI8LnUezpJ ahzv8S&itag=18&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=7c&mm=31%2C 29&mn=sn-nx5s7n76%2Csn-nx57ynsk&ms=au%2Crdu&mv=m&mvi=2&pl=17&initcwndbps=906250&s iu=1&bui=AXLXGFRb9LWg32JPSnGMKJTLm8K3ulHeoFqy6jW98J3ow17XhWM6hHiFPFeuDi2q4X9h4Fb CSw&spc=54MbxZ-_cHiojJiaToWtUNunjsdmNSRVaZsp33b3yJk5hWz-XyvPBPMvqlmBFtXq-StOzuz0D mJD&vprv=1&svpuc=1&mime=video%2Fmp4&ns=8KIxDqAhSq857Jj0EsIv_rAQ&rqh=1&cnr=14&rat ebypass=yes&dur=212.091&lmt=1717051812678016&mt=1727598776&fvip=4&fexp=51299152%2 C51300760&c=WEB&sefc=1&txp=4538434&n=5BzkN_PgDUfS4g&sparams=expire%2Cei%2Cip%2Ci d%2Citag%2Csource%2Crequiressl%2Cxpc%2Csiu%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns %2Crqh%2Ccnr%2Cratebypass%2Cdur%2Clmt&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl %2Cinitcwndbps&lsig=ABPmVW0wRQIhAL4XTegKBWTyhPvlGwVYx5b6wKFXGaJnWz5hPoyu2V1jAiBX3 ZHpSl-MMXhVWpt3O5ds3INf0Wlr-pbzhcj9KywORA%3D%3D&pot=MnRLRTG8kBazMEt9RGwvFceBv40K ENnpHtlDrguGDKni7A-azrTC0L_GYy7Pz-fH6mqHFsS7CmHJ3c3g9Y6z-RqqRsbYhMeXWbiXmyTXLpKRX OkQFbgSjNeRohf9afkINW7suFEVcBe0OedclwPPNYTqkcXvKA%3D%3D&sig=AJfQdSswRAIgfjB7dIm2 WxtJENp3UQMt-R6AOxAG42tSR_R8AY1VOjQCIHZTT43adN0Wy7XAicHL3yPavg78sous0M4orEjRw98v" } }, "المشاهدات": 1576357050, "watch_url": "https://youtube.com/watch?v=dQw4w9WgXcQ"}
200 OK
: البيانات الوصفية للفيديو.
400 Bad Request
: عنوان URL غير صالح أو معلمة مفقودة.
500 Internal Server Error
: خطأ من جانب الخادم.
بوست /download
الوصف: تنزيل محتوى YouTube بأعلى دقة متاحة.
نص الطلب:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ", "subtitle": {"burn": true,"lang": "ar" }، "رابط": خطأ}
مثال للإجابة (تنزيل الملف):
إذا كان link
false
:
سيكون الرد هو تنزيل الملف.
إذا كان link
true
:
{ "رابط التنزيل": "http://example.com/temp_file/temp_Python_Tutorial_for_Beginners.mp4"}
200 OK
: رابط التنزيل أو الملف.
400 Bad Request
: عنوان URL أو معلمات غير صالحة.
500 Internal Server Error
: خطأ من جانب الخادم.
نشر /download/<resolution>
الوصف: تنزيل محتوى YouTube بدقة محددة.
نص الطلب:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ"، "معدل البت": "128 كيلوبت في الثانية"، "العنوان الفرعي": {"burn": صحيح،"lang": "ar" }، "رابط": خطأ}
مثال للإجابة (تنزيل الملف):
إذا كان link
false
:
سيكون الرد هو تنزيل الملف.
إذا كان link
true
:
{ "رابط التنزيل": "http://example.com/temp_file/temp_Python_Tutorial_360p.mp4"}
200 OK
: رابط التنزيل أو الملف.
400 Bad Request
: الدقة أو معدل البت أو عنوان URL غير صالح.
500 Internal Server Error
: خطأ من جانب الخادم.
بوست /download_audio
الوصف؛: تنزيل صوت YouTube بأعلى جودة.
نص الطلب:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ"، "الرابط": خطأ}
مثال للإجابة (تنزيل الملف):
إذا كان link
false
:
سيكون الرد هو تنزيل الملف.
إذا كان link
true
:
{ "رابط التنزيل": "http://example.com/temp_file/temp_Python_Tutorial.mp3"}
200 OK
: رابط التنزيل أو الملف.
400 Bad Request
: عنوان URL غير صالح.
500 Internal Server Error
: خطأ من جانب الخادم.
بوست /download_audio/<bitrate>
الوصف: تنزيل صوت YouTube بمعدل بت محدد.
نص الطلب:
{ "url": "https://youtube.com/watch?v=dQw4w9WgXcQ"، "الرابط": خطأ}
مثال للإجابة (تنزيل الملف):
إذا كان link
false
:
سيكون الرد هو تنزيل الملف.
إذا كان link
true
:
{ "رابط التنزيل": "http://example.com/temp_file/temp_Python_Tutorial_48kbps.mp3"}
200 OK
: رابط التنزيل أو الملف.
400 Bad Request
: معدل البت أو عنوان URL غير صالح.
500 Internal Server Error
: خطأ من جانب الخادم.
احصل على /captions/<lang>
الوصف: استرداد التسميات التوضيحية لمقطع فيديو YouTube.
معلمات الاستعلام:
url
: عنوان URL لمقطع فيديو YouTube.
طلب مثال:
احصل على /captions/en?url=https://youtube.com/watch?v=dQw4w9WgXcQ
الرد على سبيل المثال:
{ "caption": "عادةً ما يكون أطفالي هم من يكسرون الأشياء وأنا الشخص الذي يمكنه إصلاحها ولكن عندما يحدث تآكل في تبريد مياه حمام السباحة الخاص بي"، "caption_json": [ { "المدة": 5.679، "البدء": 0.12، "نص": "عادةً أطفالي هم من يكسرون الأشياء و"}, { "المدة": 5.919، "البدء": 2.72، "نص": "أنا من سيصلح المشكلة ولكن متى"}, { "المدة": 6.201، "البدء": 5.799، "النص": "التآكل في تبريد مياه حمام السباحة الخاص بي"} ], "ملف": "http://youtube-dl-api.frii.site/temp_file/I%20broke%20my%20son's%20gaming%20PC%20and%20now%20I%E2%80%99m%20make%20him %20fix%20it.srt", "lang": "الإنجليزية (يتم إنشاؤها تلقائيًا)", "lang_code": "ar"}
200 OK
: بيانات التسميات التوضيحية.
400 Bad Request
: عنوان URL أو رمز اللغة غير صالح.
500 Internal Server Error
: خطأ من جانب الخادم.
احصل على /temp_file/<filename>
الوصف؛: استرداد ملف مؤقت.
حدود:
filename
: اسم الملف.
طلب مثال:
احصل على /temp_file/temp_Python_Tutorial_for_Beginners.mp4
الرد على سبيل المثال:
إذا كان الملف موجودًا، فسيكون الرد هو تنزيل الملف.
إذا كان الملف غير موجود:
{ "خطأ": "لم يتم العثور على الملف"}
200 OK
: تنزيل الملف.
404 Not Found
: الملف غير موجود.
لتشغيل واجهة برمجة التطبيقات، استخدم:
بيثون main.py
مسح الملفات المؤقتة: يقوم التطبيق بجدولة مهمة لمسح الملفات المؤقتة الأقدم من 24 ساعة.
تحقق من app.log
للحصول على رسائل خطأ مفصلة.
تأكد من أن TEMP_DIR
لديه الأذونات المناسبة.
التحقق من صحة عناوين URL والمعلمات على YouTube في طلبات واجهة برمجة التطبيقات.
هذا المشروع مرخص بموجب ترخيص AGPL-3. راجع ملف LICENSE
للحصول على التفاصيل.