حزمة سريعة للغاية لاستخراج نتائج بحث YouTube. تم صنع هذا من أجل Discord Bots.
npm install scrape-youtube --save
import { youtube } from 'scrape-youtube' ;
// const { youtube } = require('scrape-youtube');
youtube . search ( 'Short Change Hero' ) . then ( ( results ) => {
// Unless you specify a custom type you will only receive 'video' results
console . log ( results . videos ) ;
} ) ;
// or
const { videos } = await youtube . search ( 'Short Change Hero' ) ;
الأنواع المدعومة هي: video
، live
، movie
، channel
، playlist
وأي any
. تستخدم هذه الأنواع المعلمة sp
. إذا قمت بتمرير قيمة sp
الخاصة بك فسوف تحل محل الأنواع. راجع قسم "المرشحات المخصصة" لمزيد من المعلومات.
youtube . search ( 'lofi hip hop beats to relax/study to' , { type : 'live' } ) . then ( ( results ) => {
console . log ( results . streams ) ;
} ) ;
يرجى الاطلاع على دليل الأمثلة للحصول على أمثلة حول البيانات التي ستتلقاها من كل بحث.
يجب أن يكون لدى IDE الخاص بك خاصية الإكمال التلقائي التي تعمل مع ملفات الواجهة، ولكنها موجودة هنا فقط في حالة حدوث ذلك.
إذا كنت تريد مساعدة في استخدام هذا في Discord Bot، فيرجى زيارة صفحة wiki للحصول على أمثلة TS/JS.
يرجى ملاحظة أن "مقاطع الفيديو" المدرجة في ردود قائمة التشغيل ستحتوي على عنصر أو عنصرين فقط. وهذا ما هو متاح من نتائج البحث.
إذا كنت ترغب في تحميل قائمة تشغيل كاملة، ففكر في استخدام ytdl-core.
يمكنك تمرير { sp: 'ABC' }
كمعلمة ثانية لاستخدام المرشحات المخصصة مثل تاريخ التحميل والمدة والميزات وما إلى ذلك.
ستحتاج إلى جلب معلمة SP بنفسك من youtube. يرجى الاطلاع على هذه الصورة للحصول على مثال.
يمكنك تمرير { request: { } }
كمعلمة ثانية لاستخدام الوكيل والرؤوس المخصصة والوكلاء وما إلى ذلك.
راجع http.request لمزيد من المعلومات.
const options = {
type : 'video' ,
request : {
headers : {
Cookie : 'PREF=f2=8000000' ,
'Accept-Language' : 'de'
}
}
} ;
youtube . search ( 'Poets of the fall' , options ) ;
على سبيل المثال، سيؤدي استخدام Cookie: 'PREF=f2=8000000'
إلى تمكين الوضع المقيد لتصفية مقاطع الفيديو التي تحتوي على لغة سيئة أو مواضيع خاصة بالبالغين.
بالإضافة إلى ذلك، سيؤدي 'Accept-Language': 'de'
إلى تحميل YouTube باللغة الألمانية، مما يؤدي أحيانًا إلى عناوين واستجابات مختلفة للمحتوى.
يمكنك استخدام ytdl-core by fent لتحميل معلومات إضافية مثل تواريخ التحميل الدقيقة والأوصاف الكاملة ونسبة الإعجاب/عدم الإعجاب وإعلانات الفيديو وما إلى ذلك.
يرجى الاطلاع على هذا المثال في الويكي لمعرفة كيفية القيام بذلك.
كما ذكرنا في الإصدار رقم 57، يبدو أن بعض القنوات لديها عدد مشتركين مخفي. في هذه الحالة، ستكون الحزمة الافتراضية هي 0.
سيتم استخدام مقابض القنوات إذا كانت متوفرة. بعض القنوات لا تحتوي على مقابض، إذا كان الأمر كذلك، فإن رابط القناة سيستخدم المعرف القديم، على سبيل المثال: /channel/12345
vs /@user
أوصي بالالتزام بالمعرف لأن المقابض غير موثوقة.
any
نوع.تم إنشاء هذا المشروع بواسطة Kain (ksir.pw) فلا تتردد في الاتصال بي إذا كان لديك أي مشكلة مع هذه الحزمة.
المساهمات والقضايا وطلبات الميزات هي موضع ترحيب! لا تتردد في التحقق من صفحة القضايا.
قم بإعطاء ️ إذا كان هذا المشروع قد ساعدك!
حقوق النشر © 2018 كين (ksir.pw). هذا المشروع مرخص من معهد ماساتشوستس للتكنولوجيا.