mirror of
https://github.com/YuzuZensai/play-dl-test.git
synced 2026-01-31 14:58:05 +00:00
YouTube : Completed
This commit is contained in:
@@ -6,8 +6,29 @@ import { Channel } from "./classes/Channel";
|
||||
import { PlayList } from "./classes/Playlist";
|
||||
|
||||
|
||||
export async function search(url:string, options? : ParseSearchInterface): Promise<(Video | Channel | PlayList)[]> {
|
||||
enum SearchType {
|
||||
Video = 'EgIQAQ%253D%253D',
|
||||
PlayList = 'EgIQAw%253D%253D',
|
||||
Channel = 'EgIQAg%253D%253D',
|
||||
}
|
||||
|
||||
export async function search(search :string, options? : ParseSearchInterface): Promise<(Video | Channel | PlayList)[]> {
|
||||
let url = 'https://www.youtube.com/results?search_query=' + search.replaceAll(' ', '+')
|
||||
if(!url.match('&sp=')){
|
||||
url += '&sp='
|
||||
switch(options?.type){
|
||||
case 'channel':
|
||||
url += SearchType.Channel
|
||||
break
|
||||
case 'playlist':
|
||||
url += SearchType.PlayList
|
||||
break
|
||||
case 'video':
|
||||
url += SearchType.Video
|
||||
break
|
||||
}
|
||||
}
|
||||
let body = await url_get(url)
|
||||
let data = ParseSearchResult(body)
|
||||
let data = ParseSearchResult(body, options)
|
||||
return data
|
||||
}
|
||||
Reference in New Issue
Block a user