基于python修改srt字幕的时间轴

 更新时间:2020年02月03日 08:36:27   作者:一起来学python  
这篇文章主要介绍了基于python修改srt字幕的时间轴,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

这篇文章主要介绍了基于python修改srt字幕的时间轴,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

代码如下

# -*- coding: utf-8 -*-
# @时间 : 2020-01-19 02:53
# @作者 : 陈祥安
# @文件名 : run.py.py
# @公众号: Python学习开发

import os
import datetime

temp = os.path.dirname(__file__)
srt_file_path = os.path.join(temp, "15.srt")


def read_srt_file_gen():
  with open(srt_file_path, "r") as fs:
    for data in fs.readlines():
      yield data


def read_srt_file():
  with open(srt_file_path, "r") as fs:
    data = fs.read()
  return data


def start():
  new_data_str = read_srt_file()
  for item in read_srt_file_gen():
    if "--> " in item:
      time_arr = item.split('--> ')
      start_time = time_arr[0].replace(" ", "")
      end_time = time_arr[1].replace("\n", "")
      _new_start_time = datetime.datetime.strptime(start_time + "0", "%H:%M:%S,%f") - datetime.timedelta(
        seconds=1)
      _new_end_time = datetime.datetime.strptime(end_time + "0", "%H:%M:%S,%f") - datetime.timedelta(
        seconds=1)
      new_start_time = datetime.datetime.strftime(_new_start_time, "%H:%M:%S,%f")[:-3]
      new_end_time = datetime.datetime.strftime(_new_end_time, "%H:%M:%S,%f")[:-3]
      new_data_str = new_data_str.replace(start_time, new_start_time).replace(end_time, new_end_time)
  return new_data_str


if __name__ == '__main__':
  print(start())

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python thrift 实现 单端口多服务的过程

    python thrift 实现 单端口多服务的过程

    这篇文章主要介绍了python thrift 实现 单端口多服务的过程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 解决python报错ImportError:urllib3 v2.0 only supports OpenSSL 1.1.1+

    解决python报错ImportError:urllib3 v2.0 only supports OpenSSL

    这篇文章主要介绍了解决python报错ImportError:urllib3 v2.0 only supports OpenSSL 1.1.1+的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12
  • python使用Image处理图片常用技巧分析

    python使用Image处理图片常用技巧分析

    这篇文章主要介绍了python使用Image处理图片的常用技巧,实例分析了Python使用image处理图片过程中改变图片大小、图片类型及远程图片中常见问题与解决方法,需要的朋友可以参考下
    2015-06-06
  • Python3之不使用第三方变量,实现交换两个变量的值

    Python3之不使用第三方变量,实现交换两个变量的值

    今天小编就为大家分享一篇Python3之不使用第三方变量,实现交换两个变量的值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Python的加密模块之hashlib 与 base64详解及常用加密方法

    Python的加密模块之hashlib 与 base64详解及常用加密方法

    我们来学习一下 Python 中的加密模块,加密模块在工作中被广泛应用,比如数据的传入 不希望被捕获,通过把数据加密。这样即使被捕获也无法获取到数据的真实信息,今天我们就来学习一下关于加密的方法,感兴趣的朋友跟随小编一起看看吧
    2023-02-02
  • tensorflow中的梯度求解及梯度裁剪操作

    tensorflow中的梯度求解及梯度裁剪操作

    这篇文章主要介绍了tensorflow中的梯度求解及梯度裁剪操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Python中eval()函数的详细使用教程

    Python中eval()函数的详细使用教程

    eval函数在Python中具有非常重要的地位,熟练的使用eval函数能够为我们的Python编程提供很多的便利之处,下面这篇文章主要给大家介绍了关于Python中eval()函数的详细使用,需要的朋友可以参考下
    2022-07-07
  • Python中多返回值的应用场景

    Python中多返回值的应用场景

    Python 是一种非常灵活的编程语言,它允许函数返回多个值,本文主要介绍了Python中多返回值的应用场景,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • python实现添加图片到word文档中

    python实现添加图片到word文档中

    这篇文章主要介绍了python实现添加图片到word文档中方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • 5分钟 Pipenv 上手指南

    5分钟 Pipenv 上手指南

    这篇文章主要介绍了5分钟 Pipenv 上手指南,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12

最新评论