Вытаскивание субтитров с youtube [приватный] | Дневник pmb
Чтобы скачать видео с ютюба есть куча онлайн сервисов.
Но некоторые видео идут с субтитрами. Их их иногда хочется скачать тоже.
Как скачивать их напрямую — не совсем понятно.
Зато их можно вытащить из кэша браузера.
Файлы, относящиеся к ролику, можно найти в кэше по дате создания.
Либо очистить кэш, и загрузить ролик заново.
(И наверняка есть какой-нибудь плагин, позволяющий найти файлы по источнику.)
Среди появившихся с роликом файлов будут два, которые идентифицируются как «gzip compressed data» (первые два байта — 0x1F, 0x8B)
Один из них — html код, а второй — собственно субтитры, в формате xml.
Cтруктура файла такая:
Начало и длительность тут указаны в секундах, с точностью до тысячной.
Текст, очевидно, в кодировке, utf-8.
Пробелы и разрывы строк встерчаются только внутри строк титров.
Эти субтитры можно сконвертировать в простой и популярный формат .srt простым XSLT скриптом:
Теперь результат можно переименовать одинаково с сохранённым видео и наслаждаться.
Но некоторые видео идут с субтитрами. Их их иногда хочется скачать тоже.
Как скачивать их напрямую — не совсем понятно.
Зато их можно вытащить из кэша браузера.
Файлы, относящиеся к ролику, можно найти в кэше по дате создания.
Либо очистить кэш, и загрузить ролик заново.
(И наверняка есть какой-нибудь плагин, позволяющий найти файлы по источнику.)
Среди появившихся с роликом файлов будут два, которые идентифицируются как «gzip compressed data» (первые два байта — 0x1F, 0x8B)
Один из них — html код, а второй — собственно субтитры, в формате xml.
Cтруктура файла такая:
<transcript>
<text start="начало" dur="длительность">строка титров</text>
</transcript>
Начало и длительность тут указаны в секундах, с точностью до тысячной.
Текст, очевидно, в кодировке, utf-8.
Пробелы и разрывы строк встерчаются только внутри строк титров.
Эти субтитры можно сконвертировать в простой и популярный формат .srt простым XSLT скриптом:
<stylesheet xmlns="http://www.w3.org/1999/XSL/Transform" version='1.0'>
<output method='text' encoding='utf-8'/>
<!-- или другая кодировка вывода -->
<template match="/transcription">
<apply-templates/>
</template>
<template match="text">
<value-of select="position()"/>
<text>
</text>
<call-template name="time">
<with-param name="timestamp" select="number(@start)"/>
</call-template>
<text> --> </text>
<call-template name="time">
<with-param name="timestamp" select="number(@start) + number(@dur)"/>
</call-template>
<text>
</text>
<copy-of select="text()"/>
<text>
</text>
</template>
<template name="time">
<param name="timestamp"/>
<variable name="ts" select="floor($timestamp)"/>
<variable name="s" select="$ts mod 60"/>
<variable name="tm" select="($ts - $s) div 60"/>
<variable name="m" select="$tm mod 60"/>
<variable name="h" select="($tm - $m) div 60"/>
<variable name="fs" select="substring(string($timestamp - $ts),3,6)"/>
<value-of select="$h"/>
<text>:</text>
<value-of select="$m"/>
<text>:</text>
<value-of select="$s"/>
<text>,</text>
<value-of select="$fs"/>
</template>
</stylesheet>
Теперь результат можно переименовать одинаково с сохранённым видео и наслаждаться.
Прямой эфир
- Hellbender → 50 321 в Дневник Hellbender
- Hellbender → 90 670 в Дневник Hellbender
- Hellbender → 2025 169 в Дневник Hellbender
- Hellbender → 50 217 в Дневник Hellbender
- Hellbender → Fatboy Slim "Palookaville" 180 в Дневник Hellbender
- Hellbender → 15 26 в Дневник Hellbender
- Hellbender → UT4 55 в Дневник Hellbender
- Hellbender → 15 14 в Дневник Hellbender
- Hellbender → 12 12 в Дневник Hellbender
- Hellbender → 1002 7 в Дневник Hellbender
Весь эфир | RSS
Реклама
Сообщества
- 35.46Avril Ru Team
- 20.70Фото Аврил
- 11.81Творчество
- 11.48Abbey Dawn
- 8.22Oldschool
- 8.12Блог-журнал «Аврил Лавин»
- 7.09Юмор
- 5.79Hard & Soft
- 4.67Баги и предложения
- 3.54Видео
Комментарии (2)
RSS свернуть / развернутьСкажите пожалуйста, в какую часть скрипта вставлять:
строка титров
т.е. содержимое .xml субтитров, и в каком формате потом сохранять?
Спасибо.
Raduga2012
Скажите пожалуйста, в какую часть скрипта вставлять:
содержимое .xml субтитров и в каком формате потом сохранять?
Спасибо.
Raduga2012
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.