видео не хочет загружаться из за возрастного ограничения youtube-dl

Я пишу своего бота для музыки и столкнулся с проблемой, YouTube-dl не хочет загружать видео с возрастным ограничением, из за чего не загружается весь плейлист. вопрос состоит вот, в чём: как пропускать треки, которые не могут быть загружены?

код:

@client.command()
async def play(ctx, arg):
    global vc

    try:
        voice_channel = ctx.message.author.voice.channel
        vc = await voice_channel.connect()
        await ctx.send("tracks are loading")
    except:
        pass

    try:
        if vc.is_playing():
            await ctx.send(f'{ctx.message.author.mention}, the music is already playing.')

        else:
            with YoutubeDL(YDL_OPTIONS) as ydl:
                info = ydl.extract_info(arg, download=False)

            URL = info['formats'][0]['url']

            vc.play(discord.FFmpegPCMAudio(source=URL, **FFMPEG_OPTIONS))
    except:
        await ctx.send('Unknown error')

        while vc.is_playing():
            await asyncio.sleep(1)
        if not vc.is_paused():
            await vc.disconnect()

ошибка:

[youtube] Downloading just video VAotPZ815wE because of --no-playlist
[download] Downloading video 187 of 258
[youtube] E3SDHkCTg-M: Downloading webpage
[youtube] E3SDHkCTg-M: Refetching age-gated info webpage
WARNING: unable to download video info webpage: HTTP Error 410: Gone
[youtube] Downloading just video E3SDHkCTg-M because of --no-playlist
2ERROR: Sign in to confirm your age
This video may be inappropriate for some users.

Ответы (2 шт):

Автор решения: denisnumb

Один из вариантов обхода этого ограничения — получение доступа к видео с аккаунта без возрастных ограничений. Чтобы youtube-dl могла зайти под аккаунтом, нужно сохранить cookie-файлы авторизации и передать их в параметры.

Чтобы извлечь файлы cookie из браузера, используйте любое соответствующее расширение браузера для экспорта файлов cookie. Например, Get cookies.txt (для Chrome) или cookies.txt (для Firefox).

Далее укажите путь к полученному .txt-файлу в вашем словаре YDL_OPTIONS

YDL_OPTIONS = {. . ., 'cookiefile': 'cookies.txt', . . .}

И все заработает

Источник

→ Ссылка
Автор решения: Beqa Gozalishvili

Советую использовать yt-dlp так как он активно развивается и вероятность ложных срабатываний будет намного меньше.

→ Ссылка