- 通过f12找到视频的m3u8地址和字幕文件
- 使用python把视频的xml文件转换成.srt的字幕文件
- 在potplayer添加字幕即可播放
目标网站 是littlefox, 其中XML字幕文件到srt格式字幕的核心转换算法如下
def milliseconds_to_srt_time(milliseconds):
"""
将XML文件中的毫秒转换成srt格式的时间戳
:param milliseconds:
:type milliseconds:
:return:
:rtype:
"""
# 因为片头是从12秒开始的 1秒=1000毫秒
milliseconds = float(milliseconds) + 12000
# 将毫秒转换为秒
# 因为输入的是个字符串 将它强转成int
seconds = float(milliseconds) / 1000
# 计算小时、分钟、秒和毫秒
hours, remainder = divmod(seconds, 3600)
minutes, seconds = divmod(remainder, 60)
milliseconds = int((seconds - int(seconds)) * 1000)
seconds = int(seconds)
# 这里的时分秒都要取整 否则格式化的时候会出错
minutes = int(minutes)
hours = int(hours)
# 格式化为SRT时间格式 用replace去掉后面的.
srt_time = f"{hours:02}:{minutes:02}:{seconds:02},{milliseconds:03}".replace(".", "")
return srt_time
reference