zoukankan      html  css  js  c++  java
  • 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("
    ", "")
                _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())
    
    
  • 相关阅读:
    BZOJ 5018 [Snoi2017]英雄联盟
    BZOJ 4945 [Noi2017]游戏
    BZOJ4942 [Noi2017]整数
    BZOJ 2427 [HAOI2010]软件安装
    BZOJ 4870 [Shoi2017]组合数问题
    THINKPHP 全局404
    PHP 万能查询代码
    xml Array 相互转化
    JS 倒计时计算
    PHP 多态
  • 原文地址:https://www.cnblogs.com/c-x-a/p/12210909.html
Copyright © 2011-2022 走看看