首页 > 解决方案 > 如何从.srt文件中获取Python中给定时间戳的文本

问题描述

我浏览了一些 python 字幕库(pysrt、pysubs2、srt),但还没有找到一种直接的方法来从给定时间戳的文件中提取 srt 条目。任何方向表示赞赏。

cat subtitle_file.srt

...

7

00:00:49,450 --> 00:00:51,219

和他们看起来的一模一样

8

00:00:51,252 --> 00:00:53,454

在 ed sullivan 节目中表演。

...

-

>>> import SUBTITLE_LIBRARY
>>> subs = SUBTITLE_LIBRARY.load("subtitle_file.srt")
>>> subs.getSubtitleEntry(t=51.500)
Performing on the ed sullivan show.

标签: pythonsubtitle

解决方案


您可以使用pysrt,它可以从 srt 文件加载和切片字幕。

您的代码如下所示:

import pysrt

subs = pysrt.open('subtitle_file.srt')
parts = subs.slice(starts_before={'minutes': 0, 'seconds': 51.500}, ends_after={'minutes': 0, 'seconds': 51.500})

for part in parts:
    print(part)

推荐阅读