首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用youtube-dl搜索Youtube视频

使用youtube-dl搜索Youtube视频
EN

Stack Overflow用户
提问于 2020-08-13 04:54:33
回答 2查看 12.5K关注 0票数 3

我试图建立一个不和谐的音乐机器人,我需要搜索的YouTube使用关键字给出的用户。目前我知道如何从url中弹奏。

代码语言:javascript
复制
       loop = loop or asyncio.get_event_loop()
       data = await loop.run_in_executor( None, lambda: ytdl.extract_info(url, download=not stream))
       if "entries" in data:
            data = data["entries"][0]

        filename = data["url"] if stream else ytdl.prepare_filename(data)
        return cls(discord.FFmpegPCMAudio(filename, **ffmpeg_options), data=data)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-08-17 13:23:46

Youtube_DL有一个可以使用的extract_info方法。与其给它一个链接,您只需要像这样传递ytsearch:args

代码语言:javascript
复制
from requests import get
from youtube_dl import YoutubeDL

YDL_OPTIONS = {'format': 'bestaudio', 'noplaylist':'True'}

def search(arg):
    with YoutubeDL(YDL_OPTIONS) as ydl:
        try:
            get(arg) 
        except:
            video = ydl.extract_info(f"ytsearch:{arg}", download=False)['entries'][0]
        else:
            video = ydl.extract_info(arg, download=False)

    return video

具有此功能的几个重要事项:

  • 它同时适用于单词和urls。
  • 如果你在youtube上搜索,输出将是一个字典列表。在这种情况下,它将返回第一个结果。
  • 它将返回一个包含以下信息的字典: video_infos =search(“30秒视频”)#不包含所有数据,一些键不是非常重要的cleared_data ={‘通道’:视频‘上传器’,‘频道_url’:视频‘上传者_url’,‘标题’,‘描述’:视频‘描述’,‘视频_url’:视频‘网页_url’,‘持续时间’:视频‘持续时间’,#在秒'upload_date':视频‘upload_data’,#YYYYDDMM‘缩略图’:视频‘缩略图’,‘音频_源’:视频‘格式’‘url’,'view_count':视频‘view_count’,'like_count':视频‘like_count’,‘厌恶_计数’:视频‘厌恶_计数’,}
票数 9
EN

Stack Overflow用户

发布于 2020-08-13 07:18:10

我不确定youtube-dl是否适合使用关键字搜索youtube urls。为此,您可能应该看看youtube-搜索

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63388364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档