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에서 이를 사용하는 데 도움이 필요하면 TS/JS 예제에 대한 위키 페이지를 방문하세요.
재생목록 응답에 나열된 '동영상'에는 1~2개의 항목만 포함됩니다. 검색결과에 나오는 내용입니다.
전체 재생 목록을 로드하려면 ytdl-core 사용을 고려하세요.
업로드 날짜, 기간, 기능 등과 같은 맞춤 필터를 사용하려면 { sp: 'ABC' }
두 번째 매개변수로 전달할 수 있습니다.
YouTube에서 SP 매개변수를 직접 가져와야 합니다. 예를 보려면 이 이미지를 참조하세요.
프록시, 사용자 정의 헤더, 에이전트 등을 사용하려면 { 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를 사용하여 정확한 업로드 날짜, 전체 설명, 좋아요/싫어요 비율, 동영상 광고 등과 같은 추가 정보를 로드할 수 있습니다.
방법을 보려면 위키에서 이 예를 참조하세요.
문제 #57에서 언급했듯이 일부 채널에는 구독자 수가 숨겨져 있는 것으로 보입니다. 이 경우 패키지의 기본값은 0입니다.
가능한 경우 채널 핸들이 사용됩니다. 일부 채널에는 핸들이 없습니다. 이 경우 채널 링크는 이전 ID(예: /channel/12345
vs /@user
를 사용합니다. 핸들은 신뢰할 수 없으므로 ID를 고수하는 것이 좋습니다.
any
유형을 사용하더라도 검색당 1개의 요청만 수행합니다.이 프로젝트는 Kain(ksir.pw) 이 제작했습니다. 이 패키지에 문제가 있으면 언제든지 저에게 연락해 주세요.
기여, 문제 및 기능 요청을 환영합니다! 이슈 페이지를 확인해 보세요.
이 프로젝트가 도움이 되었다면 ️를 보내주세요!
저작권 © 2018 Kain (ksir.pw). 이 프로젝트는 MIT 라이선스를 받았습니다.