LINUX.ORG.RU

yt-dlp просит подтвердить что я человек.

 ,


0

1

Собственно yt-dlp отказывается качать с Ютюба и требует поставить галочку что я человек.

Как я это могу сделать то? Подскажите что можно с этим поделать.

Как я это могу сделать то? Подскажите что можно с этим поделать.

Один из вариантов использовать куки из браузера. Также можно залогиниться и эти куки попробовать использовать, так больше вероятность что пропустит.

V1KT0P ★★
()
Последнее исправление: V1KT0P (всего исправлений: 1)
Ответ на: комментарий от luiswoo

На Реддите предлагают просто: –cookies-from-browser firefox

Да, так тоже работает по идее. Сам использую с путём к профилю, потому что у меня он отличается от стандартного (запираю firefox в отдельном псевдо-хомяке при помощи bwrap).

Что несколько напрягает…

Чем? Они ж не все ютубу шлются, а только ютубовы.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Ответ на: комментарий от luiswoo

Они и так просто так доступны программе, запущенной от пользователя — firefox. Ну и в принципе они доступны любой программе, запущенной от пользователя, имеющей доступ к этим файлам. С yt-dlp в этом плане как раз проще всего — там довольно простой и не то чтобы мегаобъёмный код на питоне, в котором легко посмотреть, что с этими куками делается. С firefox в данном случае намного сложнее — он хоть и опенсорсный, но кода столько, и он такой путанный, что задача эта на грани непосильной для одного человека, особенно если ищется не просто явное злономеренное поведение, но и потенциальные уязвимости.

Но если это парит, то можно вытащить кукисы в файл (правда программа, которая вытаскивает, тоже будет иметь доступ к ним…) и отдавать yt-dlp только ютубовские.

CrX ★★★★★
()
Ответ на: комментарий от CrX

Ну короче да, из Файерфокса куки принимает но у него новые выкрутасы. Если подсовываю куки, yt-dlp банально не находит видео. Пишет что есть только 4 картинки (если через ключ -F смотришь какие есть форматы).

Так что все равно не работает.

Vochatrak-az-ezm ★★
() автор топика
Ответ на: комментарий от Vochatrak-az-ezm

У меня на втором компе та же версия yt-dlp и тот же дистр. Там все нормально (пока?). А тут вон оно что.

Даже так…

Ну тогда мои полномочия всё, думаю. Попробуй понять, в чём разница между двумя этими компами в контексте yt-dlp. IP один, аккаунт тоже один(?), версия и дистр те же… Что ещё может быть?

А, ну и да, после логина в браузере на том компе, с которого качаешь, не надо открывать ютуб на другом.

CrX ★★★★★
()

Используй параметр --cookies-from-browser тут_ставь_chrome_или_firefox_в_зависимости_от_браузера. Надо только быть залогиненным в Google-аккаунт в браузере.

anonymous
()

cookies-from-browser

Скоро cookies будет недостаточно:

YouTube постепенно вводит использование «токена PO» для загрузки видео. Из-за характера этих токенов yt-dlp не может их генерировать, и они должны предоставляться извне.

По умолчанию yt-dlp попытается загрузить видео с помощью клиентов, которым в настоящее время не требуется токен PO. Однако некоторые форматы и функции могут быть недоступны без токена(ов).
wiki

krasnh ★★★★
()
Ответ на: комментарий от burato

Насколько я понимаю, он не поддерживается. Тогда надо экспортировать куки из брайзера в файл, а потом использовать yt-dlp --cookies /path/to/cookies/file.

CrX ★★★★★
()
Ответ на: комментарий от krasnh

YouTube постепенно вводит использование «токена PO» для загрузки видео. Из-за характера этих токенов yt-dlp не может их генерировать, и они должны предоставляться извне.

Можно пояснение, что это такое «PO token» и почему его не может получить yt-dlp? Вики читал, но как-то мутно там описано.

Я понял, если правильно понял, что это какая-то херня, которая по запросу плеера генерится сторонним сайтом (не гуглом или просто другим сервером гугла) и которую плеер должен подсунуть при реквесте гугловидеосерверу. Тот видимо при этом тоже запрос сделает и спросит, а правда ли точно эту херню этому плееру выдали.

yt-dlp предлагает разные методы экстракции этой херни из браузера, чтобы потом ее совать для скачивания.

Но так и не понял, вопрос, а что мешает yt-dlp сделать вид, что херню запросил браузер?

anonymous
()
Ответ на: комментарий от yandrey

И чего кроме phantomjs ничего нет? Нельзя как-то автоматически дернуть лису или хром или выдрать из них и тп?

Кстати, а как тогда всякие Node.js на сервере работают, если кроме устаревшего фантома ничего нет?

anonymous
()