youtube-dl для python: как я могу получить код ошибки для результатов без видео? - PullRequest
0 голосов
/ 27 марта 2019

Я использую youtube-dl для своего бота разногласий и использую default_search: auto для поиска видео.Но моя проблема в том, что когда я ищу что-то бессмысленное, например, adhsdgfasj, оно возвращает это на консоль: ERROR: [youtube] No video results.Я хочу обработать эту ошибку, и когда эта ошибка возникает, я хочу, чтобы бот сказал что-то вроде «Нет результатов видео», но так как это не дает мне код ошибки, похожий на то, что я могу использовать в try: исключением: я не могу справиться с этим.Вы можете мне помочь?

1 Ответ

2 голосов
/ 28 марта 2019

Какие варианты вы даете YouTube дл. Если вы хотите перехватить исключение, вам нужно установить ignoreerrors в True

opts = {
    'ignoreerrors': False
}

youtube_dl.YoutubeDL(opts)

Это позволит вам отлавливать исключения, заданные youtube-dl.

Еще один способ сделать это - проверить, является ли возвращаемое значение None или есть ли в возвращаемом dict что-либо из списка retval["entries"]. Когда оба оценивают как Ложные, никаких результатов не найдено.

...