Русский

Видео и субтитры · Загрузчик миниатюр YouTube и средство просмотра метаданных

Как идентификатор видео YouTube извлекается из просмотренных, коротких видео и ссылок для встраивания

· Как это работает

ютуб URL-адреса анализ

Несколько фигур ссылок YouTube, сходящихся в одном идентификаторе видео.
Оригинальная векторная иллюстрация ToolAcre

Одно и то же видео можно связать десятком способов. В этом посте объясняется, какую форму может принимать ссылка на YouTube, как инструмент находит одиннадцатизначный идентификатор внутри каждой из них и что делать с параметрами отслеживания и временными метками.

Одно и то же видео, пять разных ссылок — страницы просмотра, короткие ссылки, короткие видео, вставки и мобильные адреса.

Одно видео может быть представлено в виде просмотра URL, общего доступа youtu.be, пути Shorts, адреса для встраивания, прямой ссылки или ссылки на мобильный хост. ToolAcre сводит каждую поддерживаемую фигуру к одному и тому же одиннадцатизначному идентификатору, прежде чем рассматривать любую работу в сети. Следовательно, смешанный импорт может использовать этот идентификатор в качестве ключа дедупликации, а не рассматривать шесть ссылок на одно видео как шесть записей.

Такой порядок полезен для редакторов, очищающих смешанный список: синтаксический анализ представляет собой детерминированную строку, а URL работает на странице, поэтому о плохих доменах и ссылках только для плейлистов можно сообщать без утечки вставленного значения на удаленный преобразователь. Коллекция URL остается неразрешенной, поскольку ни ее наличие, ни порядок не определяют, какой элемент редактор намеревался процитировать.

Сам идентификатор — одиннадцать символов из 64-символьного алфавита и почему он выглядит случайным

Принятая форма идентификатора состоит ровно из одиннадцати символов, состоящих из прописных и строчных букв, цифр, дефиса и подчеркивания. Это только проверка формата; его прохождение не доказывает существование видео и не раскрывает, что означают персонажи. Применение правила к проанализированному значению v или сегменту пути позволяет избежать очистки подстроки, подобной идентификатору, из какого-либо несвязанного закодированного параметра.

Простой соответствующий идентификатор принимается немедленно. В более длинных идентификаторах плейлистов используется отдельный консервативный шаблон, предотвращающий обработку токена плейлиста как ключа для одного видео. Время начала остается сопровождающим данные цитирования: изменение 30 секунд на 90 секунд по-прежнему указывает на ту же одиннадцатисимвольную видеозапись.

Парсинг с помощью URL API — чтение хоста, пути и запроса без угадывания с помощью только регулярных выражений

Конструктор URL разделяет протокол, нормализованный хост, сегменты пути и параметры запроса. Это позволяет избежать одного гигантского регулярного выражения, которое может случайно принять похожий домен или перепутать значение запроса с идентификатором пути. Отклонить вводящий в заблуждение хост безопаснее, чем создать достоверную миниатюру идентификатора, встроенного в ненадежный URL.

Принимаются только HTTP и HTTPS, а ведущий www нормализуется. В белый список входят хосты YouTube, мобильные устройства, музыка, игры, файлы cookie и youtu.be, а не доверяемые имена хостов, содержащие слово youtube. Удаленный успех не может подтвердить происхождение плохо проанализированной ссылки, поскольку злоумышленник может намеренно включить реальный общедоступный идентификатор в несвязанный домен.

Где в каждой фигуре скрывается идентификатор — параметр v, путь к youtu.be, /shorts/,, /embed/ и /live/.

Страницы просмотра используют параметр запроса v, youtu.be использует свой первый сегмент пути, а короткие, встраиваемые и живые формы используют сегмент после префикса. Устаревшие пути /v/ и /e/ также распознаются с помощью той же строгой проверки формы. Соответствующий идентификатор разрешает только локальную обработку, а не претензии в отношении контента или права собственности.

Анализатор дополнительно считывает действительный идентификатор списка воспроизведения и начальное смещение от t или start. Он возвращает их как отдельные факты, чтобы они могли использоваться для информирования сгенерированных ссылок, не загрязняя сам идентификатор видео. Граница сети начинается только после того, как это различие будет завершено, поэтому тест синтаксического анализатора можно запустить в автономном режиме.

Игнорирование остального — параметров плейлиста, времени начала и значений отслеживания общего доступа, которые не идентифицируют видео.

Значения отслеживания общего доступа, несвязанные параметры запроса и временные метки не идентифицируют видео. ToolAcre игнорирует их после извлечения идентификатора, а поддерживаемые формы времени нормализуются до целых секунд для ссылок, которые намеренно сохраняют начальную точку. Таким образом, две ссылки с разными тегами кампании могут быть преобразованы в одну запись актива без переноса этих маркетинговых параметров в сгенерированные URL-адреса.

Только плейлисты, страницы канала и поиска получают отказ, поскольку на них не указано ни одно видео. Угадывание идентификатора на этих страницах обеспечит уверенность и может привести к получению ресурсов для неправильной записи. Куратор должен сначала выбрать отдельный предмет; синтаксический анализатор не будет спокойно выбирать первый результат из коллекции, порядок которой позже может измениться.

Рабочий пример: нормализация десяти вставленных ссылок с их идентификаторами, включая две, которые вообще не являются ссылками YouTube.

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

Во время этой нормализации не происходит проверки существования. Действительный по форме, но несуществующий идентификатор достигает поздней стадии выборки, где ответы миниатюры и oEmbed предоставляют независимые доказательства, а не изменяют результат синтаксического анализатора задним числом. Это сохраняет четкое различие между «текст является действительным идентификатором» и «Google в настоящее время предоставляет для него общедоступные материалы».

Что здесь не распространяется — URL-адреса каналов, плейлистов и поиска, которые не содержат единого идентификатора видео.

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

После нажатия кнопки Fetch зонды изображений могут обнаружить 404, другие ошибки HTTP, заполнитель 200 или недекодируемые байты. Метаданные по отдельности могут не работать из-за транспорта, HTTP или быть недействительными JSON, в том числе при вмешательстве блокировщиков, прокси-серверов или автономного состояния. Эти результаты относятся к отчету о доступности; они не должны заставлять анализатор интерпретировать исходную ссылку как другое видео.

Вывод: найдите идентификатор, а затем все, что следует — как YouTube Thumbnail Downloader принимает ссылку YouTube и документирует, какие формы он поддерживает.

После локального анализа браузер напрямую запрашивает одну миниатюру для каждого кандидата JPEG из i.ytimg.com и одну запись oEmbed JSON из www.youtube.com. oEmbed URL оборачивает канонические часы URL и format=json. Просмотр этих вызовов на панели «Сеть» подтверждает, что нормализация завершена и что один и тот же извлеченный идентификатор управляет запросами как активов, так и метаданных.

Эти анонимные GET не используют учетные данные и реферер, не используют хранилище, следуют перенаправлениям и обходят любой сервер или прокси ToolAcre. Google видит запросы и заголовок Origin; Ограничения на выход из системы по-прежнему применяются к частным, удаленным видео и видео с возрастными ограничениями. Прежде чем нажать кнопку, поведение синтаксического анализатора можно протестировать в автономном режиме с помощью репрезентативных фигур URL, поскольку для идентификации их компонентов не требуется никакого поиска.