YT_DL 使用 ytsearch:{url} 下载错误的视频

时间:2021-04-17 11:49:56

标签: python discord.py youtube-dl

尝试过

我测试了如何最好地获取视频信息/我的代码是否有效并使用了 this 链接。 我的代码如下所示:

import youtube_dl

ydl_opts = {
    'format': 'bestaudio/best',
    'outtmpl': "P:/DscMusic/testfile.wav",
    'noplaylist': True,
    'postprocessors': [{
        'key': 'FFmpegExtractAudio',
        'preferredcodec': 'wav',
        'preferredquality': '192', }]
}

with youtube_dl.YoutubeDL(ydl_opts) as ydl:
    dllink = ydl.extract_info(f"ytsearch:https://www.youtube.com/watch?v=fBtDx6ClkwY", download=False)['entries'][0]
    video_url = dllink['webpage_url']
    title = dllink['title']
    print(video_url, title)

print("Done")

问题

我现在遇到的问题是它总是下载错误的视频(一些俄罗斯拳击运动视频或其他什么)。 我还尝试切换链接,这导致它下载了其他类型的视频。

输出

[download] Downloading playlist: https://www.youtube.com/watch?v=fBtDx6ClkwY
[youtube:search] query "https://www.youtube.com/watch?v=fBtDx6ClkwY": Downloading page 1
[youtube:search] playlist https://www.youtube.com/watch?v=fBtDx6ClkwY: Downloading 1 videos
[download] Downloading video 1 of 1
[youtube] T_cfE1jBVzY: Downloading webpage
[youtube] Downloading just video T_cfE1jBVzY because of --no-playlist
[download] Finished downloading playlist: https://www.youtube.com/watch?v=fBtDx6ClkwY
https://www.youtube.com/watch?v=T_cfE1jBVzY Бодров VS Асрор. Бой за пояс. Отборы. Второй сезон. Киевстонер - ведущий
Done

想法

如果我输入视频的标题而不是链接,这将非常有效。但是,如果我使用链接在 YT 上进行搜索,它会立即显示正确的结果,理论上应该也可以。

所以有人知道我做错了什么,或者为什么这“不起作用”?

0 个答案:

没有答案