Как удалить нежелательный контент из загруженных субтитров?

360
user598527

Сгенерированные автоматически субтитры YouTube содержат метки времени для каждого слова и другой контент, который ухудшает читабельность:

00:00:30.230 --> 00:00:33.900 align:start position:19% you<00:00:31.230><c> think</c><c.colorE5E5E5><00:00:31.470><c> from</c><00:00:31.650><c> my</c><00:00:31.740><c> calm</c><00:00:31.980><c> demeanor</c><00:00:32.010><c> that</c></c><c.colorCCCCCC><00:00:32.430><c> I</c></c>   00:00:32.580 --> 00:00:36.180 align:start position:19% haven't<c.colorE5E5E5><00:00:32.760><c> got</c><00:00:32.910><c> a</c><00:00:32.940><c> care</c><00:00:33.150><c> in</c><00:00:33.210><c> the</c><00:00:33.330><c> world</c><00:00:33.420><c> that</c></c>  00:00:33.900 --> 00:00:38.160 align:start position:19% you'd<00:00:34.019><c> be</c><00:00:34.140><c> wrong</c><00:00:34.410><c> you</c><00:00:34.680><c> see</c><c.colorE5E5E5><00:00:35.000><c> hidden</c><00:00:36.000><c> within</c></c> 

Как я могу сохранить речь только с разумным форматированием? Речевое видео некоторых пользователей измеряется часами, а не минутами, и, прочитав, я смогу закончить эти «ток-шоу для одного человека» за небольшую часть времени.

0

1 ответ на вопрос

1

Сделайте следующее:

  1. Сделайте копию файла.
  2. Откройте файл в текстовом редакторе с функцией поиска и замены на основе Regex, например Notepad ++ или Visual Studio Code .
  3. Вызвать функцию поиска и замены ( Ctrl+ Hв приведенных мной примерах), найти следующее регулярное выражение и заменить ничем:

    <.*?> 

    Не забудьте активировать режим Regex. В Notepad ++ вам нужно выбрать переключатель «Регулярные выражения», а в коде Visual Studio вам нужно нажать на кнопку, которая гласит: «. *» (Или нажмите Alt+ R)

  4. Заменить все экземпляры.

Вот результат из кода Visual Studio:

00:00:30.230 --> 00:00:33.900 align:start position:19% you think from my calm demeanor that I  00:00:32.580 --> 00:00:36.180 align:start position:19% haven't got a care in the world that  00:00:33.900 --> 00:00:38.160 align:start position:19% you'd be wrong you see hidden within 
Видео с официальной поддержкой субтитров (например, https://www.youtube.com/watch?v=Ye8mB6VsUHw) уже используют этот макет, я бы предпочел удалить все метки времени, маркеры положения (`align: start position:`) и лишние разрывы строк. user598527 6 лет назад 0
Я, вероятно, могу дать вам дополнительные решения на основе Regex, но по правилу 80/20 это не поможет вам так, как это. На этом этапе проще всего загрузить полученный текст из регулярного выражения, которое я вам дал, в [Subtitle Edit] (http://nikse.dk/subtitleedit/) и начать чтение. 6 лет назад 1
Я знаю, что superuser.com не является «бесплатной службой сценариев», но я также хотел узнать, есть ли встроенная команда в youtube-dl. user598527 6 лет назад 0