Как стать автором
Обновить

Как написать свой клиент для YouTube, не привлекая внимания санитаров

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров15K
Всего голосов 16: ↑16 и ↓0+21
Комментарии54

Комментарии 54

Очень интересно! Я так понимаю в "Корпорации добра" очень неодобрительно смотрят на сторонние клиенты.
https://www.ixbt.com/live/sw/v-youtube-opolchilis-na-prilozheniya-klienty-blokiruyuschie-reklamu-na-ploschadke-i-pochemu-eto-vazhno-dlya-rossiyskih-polzovateley.html
"сервис представил новое решение — под запрет попадут и сторонние клиенты для YouTube, сами блокирующие рекламные вставки".
Тот же NewPipe у меня через какое-то время переставал работать.

Мне писали, что у NewPipe особый алгоритм для работы с ютубом и где-то даже на гитхабе есть код. Что касается InnerTube, то это достаточно надежная библиотека, т.к она основана на брутфорсе. Фактически это тот же YouTube API.
ViMusic (клон YouTube Music) работает без обновлений уже два года.
Естественно в Google Play его никто не пустит.

это достаточно надежная библиотека, т.к она основана на брутфорсе

А есть подробности по этому пункту? "Надежность" и "брутфорс" звучит как что-то взаимоисключающее

Всего лишь мои домыслы. Глубокий анализ я не проводил.
Если найдете информацию, то с радостью сам ознакомлюсь.
Я сужу по тому, что библиотека существует уже 3,5 года.
Google легко может грохнуть yt-dlp, на котором держатся вообще все онлайн загрузчики видео. Только почему-то этого не происходит.
Полагаю, если они пофиксят эту лазейку, то похерят просмотр видео на множеств устройств, вероятно на очень старых.

С yt-dlp гугл вяло, но борется. youtube время от времени меняет апи, или снижает до минимума трафик по user-agent или как-то по другому вставляет им палки в колёса, но ребяты оперативно обновляют. Сам yt-dlp - это форк от youtube-dl, который забросили то ли из-за угроз от гугла, то ли просто устали обновлять при каждом чихе ютуба.

там всё очень мутно
гугл вроде бы как борется с yt-dlp и youtube-dl, но при этом сотрудники гугла и помогают разрабам и вроде даже коммитят изредка (не фактчекал, знаю только со слов человека имеющего некое отношение к проекту).
там либо левая рука не знает что делает правая, либо "7 пятниц на неделе"..

там либо левая рука не знает что делает правая, либо "7 пятниц на неделе"..

Как вариант "не можешь победить, возглавь"

На самом деле, гигантские корпорации, правда, имеют конкурирующие команды разработки, скупают кучу других стартапов и действуют скорее как экосистема, а не единый организм.

Я лично видел как разработчики Гугла участвовали в нелегальном портировании Chrome OS (со всеми плюшками вроде Google Play и Assistant) на обычные ПК (не хромбуки). Проект назывался Croissant, после смены архитектуры- Brunch.

Куда уж надёжней брутфорса, главное чтобы времени хватило...

Китайцы взломали сервер Пентагона, вот как это было:

  1. Каждый китаец попробовал один пароль.

  2. Каждый второй пароль был "Мао Цзедун"

  3. На 74357181-й попытке- сервер согласился, что у него пароль "Мао Цзедун"

Оригинал: https://support.google.com/youtube/thread/269521462/enforcement-on-third-party-apps

Viewers who are using these third-party apps may experience buffering issues or see the error “The following content is not available on this app” when trying to watch a video

Не запрет, а косяки при просмотре.

С ньюпайпом есть глюк. Он парсит страницу ютюба со ссылками на потоки, но они протухают через 4 часа. Если продолжить смотреть видео позже, то там вываливается ошибка. Но там можно куда-то тыкнуть и оно продолжит играть. Он работает я им пользуюсь. Только этот глюк раздражает.

1) Если тыкнуть на плеер в шторке уведомлений, то сам плеер не открывается.

2) В шторке уведомлений только две кнопки плей/пауза и переметка назад. Мне бы хотелось там увидеть кнопки проматывающие на несколько секунда назад и на несколько секунд вперед. Например т.к. это сделано в полноразмерном плеере. В идеале, чтобы время насколько проматывается можно было менять в настройках.

Окей, понял. Доработаю.

В рутубе это и так работает. Да и в ютубе тоже.

В ютубе только для премиум версии, которая в России с 2022 года недоступна.

Попросите друга с iOS купить вам подписку и кидайте ему 249 рублей в месяц на телефон

Даже имея премиум подписку, при запуске Ютуба без впн вылазит полноэкранное предупреждение, о том что премиум функции не будут работать. Ну хоть без рекламы, уже хорошо.

Да блин, как оно у меня работает то тогда?

Ничего там не вылазит, сам пользуюсь, оплачивая именно через iOS.

Часто бывает, что во время прогулок по городу хочется послушать ютуб в фоновом или в PiP режиме, не отвлекаясь от общения с друзьями в мессенджере. Теперь это возможно!

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

возможно с подпиской

Доступно не только лишь для всех. Для россиян с 2022 года недоступно.

По подпискам на каналы интересно. Если доберусь, то может что-то такое и реализую.
Только как вариант без авторизации и аккаунта. Т.е все подписки хранить в БД на устройстве пользователя.

Кстати, был же ещё Vanced, он тоже вроде фоновый режим умел, если я не путаю. Вы его смотрели?

емнип заброшен много лет назад.

Закрыт по требованию Гугла, но есть форк - ReVanced

Не заброшен, а прижат гуглом, когда они решили собирать донаты

После этого перезапустили в виде фреймворка для патчинга андроид приложений - ReVanced

Принципиальный нюанс - приложения патчатся на устройстве пользователя

Появилось много форков после закрытия.
Более менее похож на него с блокировками рекламы, скачиванием и фоновым проигрованием - Astron

Другие у меня нормально не запустились или творили какую-то фигню. Но это было через пол года после закрытия, может сейчас что-то у же есть нормальное:
- Что и ленту рекомендаций подхватит, и рекламу уберёт.

Вы еще скажите что покупки в Google Play везде работают.

Как будто большая проблема стать для гугла аргентинским кабальеро...

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

А что там Аргентина россиянам карты выдает удаленно? Или вы о чем? Я конечно знаю, что можно сделать карту в Казахстане, но ехать туда чисто ради карты не хочу и платить посредникаи 20к тоже не хочу.

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

Непонятно почему Аргентина? Можно получить аргентинскую карту удаленно?

Аргентина, это регион с ценами, близкими к российским.

Какое именно слово в этой фразе вам не понятно?

Можно получить аргентинскую карту удаленно?

Аргентинская карта не требуется, подойдёт любая карта, которая принимается в мире.

как бы еще смотреть комментарии под некоторыми видео (не привлекая внимание сантиаров ест-но) ?

У InnerTube есть и на этот случай есть пример кода (сам не тестировал, но вариант свежий).
Если не секрет, то для чего это вам? Собиратесь парсить комментарии?

в питоне не силен. хочу почитать что накидали в комменты к ранним роликам одному конспирологу и историчскому ревизионисту.

Выглядит как ненужный велосипед. Есть бесплатный Vanced/ReVanced, который умеет ещё и не скачивать видео, если вы слушаете музыку в фоне - экономит трафик. Если хочешь сделать что-то полезное, лучше выкати ПР со своей идеей в этот проект.

Revanced требует авторизацию через MicroG, т.е. есть риск слить аккаунт. Но в остальном - очень достойная замена официальному приложению.

Этим и Vanced грешил, но никогда не понимал зачем ему это надо...

Сейчас есть альтернативы Vanced'а с аналогичным функционалом и без необходиости установки дополнительных севрисов.

Пользуюсь SmartTube, умеет пропускать рекламу, вступления и пр.

Сложно установить приложение Android на платформу Samsung, LG и пр. )))

Часто бывает, что во время прогулок по городу хочется послушать ютуб в
фоновом или в PiP режиме, не отвлекаясь от общения с друзьями в
мессенджере.

Смотрю YouTube на мобилке в браузере: Firefox (Android) или Orion (iOS). Установлены расширения uBlock и Video Background Play Fix. Полёт нормальный.

У меня тоже Firefox, из расширений стоит только uBlock. После блокировки видео ставится на паузу, но его можно запустить/остановить с экрана блокировки как в обычном плеере.

Я ж написал: Video Background Play Fix.

Что-то типа брутфорса*

Каким местом это брутфорс? Просто внутренний API используемый YouTube. Я в своих расширениях его тоже использую. Кстати, пару недель назад они поломали обратную совместимость своими изменениями, но этого стоит ожидать - на то он и внутренний API.

Часто бывает, что во время прогулок по городу хочется послушать ютуб в фоновом или в PiP режиме, не отвлекаясь от общения с друзьями в мессенджере.

Но эта возможность есть и в стандартном плеере Ютуба, если не жлобить 200р в месяц

А что делать половине планеты, где Premium не доступен? Казахстану, например?

Установить revanced extended?

Это понятно и правильно. Но, я про "жлобить 200р в месяц" писал.

Каюсь, пропустил, но что делать остальным

110 странам?
  • Afghanistan

  • Albania

  • Botswana

  • Brunei

  • Burkina Faso

  • Burundi

  • Cape Verde (Cabo Verde)

  • Central African Republic

  • Chad

  • China

  • Comoros

  • Congo (Congo-Brazzaville)

  • Côte d’Ivoire

  • Cuba

  • Democratic Republic of the Congo

  • Djibouti

  • Dominica

  • Equatorial Guinea

  • Eritrea

  • Eswatini (formerly Swaziland)

  • Ethiopia

  • Fiji

  • Gabon

  • Gambia

  • Grenada

  • Guinea

  • Guinea-Bissau

  • Guyana

  • Haiti

  • Holy See (Vatican City)

  • Kiribati

  • Kyrgyzstan

  • Lesotho

  • Liberia

  • Madagascar

  • Malawi

  • Maldives

  • Mali

  • Marshall Islands

  • Mauritania

  • Mauritius

  • Micronesia

  • Moldova

  • Monaco

  • Mongolia

  • Mozambique

  • Myanmar (formerly Burma)

  • Namibia

  • Nauru

  • Niger

  • North Korea

  • Palau

  • Palestine State

  • Papua New Guinea

  • Rwanda

  • Saint Kitts and Nevis

  • Saint Lucia

  • Saint Vincent and the Grenadines

  • Samoa

  • San Marino

  • Sao Tome and Principe

  • Seychelles

  • Sierra Leone

  • Solomon Islands

  • Suriname

  • Syria

  • Tajikistan

  • Timor-Leste

  • Togo

  • Tonga

  • Turkmenistan

  • Tuvalu

  • Uganda

  • Uzbekistan

  • Vanuatu

  • Venezuela

  • Western Sahara

  • Yemen

  • Zambia

  • Zimbabwe

Я думаю, многие их жители и рады бы "не жлобить 200р в месяц", да, вот паспортом не вышли. Так, что, эта ситуация не всегда о "жлобстве".

Так.. а чего это ютуб в Узбекистане заблокирован? С чего там быть премиуму? куба и ютуб тоже смешно. Тут почти все страны те которым не до ютуба вообще.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории