零代码编程:用ChatGPT将SRT字幕文件批量转为Word文本文档

一个文件夹中有多个srt视频字幕文件,srt文件里面有很多时间轴:

现在想将其批量转为word文档,去掉里面与字符无关的时间轴,在ChatGPT中输入提示词:

你是一个Python编程专家,要完成一个批量将SRT字幕文件转为Word文本文档的任务,具体步骤如下:

打开文件夹:F:\儿童学习教育\Abadas.适合2岁以上.BBC儿童学习单词的动画;

读取里面所有的srt字幕文件;

将srt字幕文件里面的时间和数字序号全部去掉,只保留字幕文本,另存为word文档;

比如,原有的srt字幕文件内容为:

1

00:00:20,560 --> 00:00:22,760

'Hey, Abadas!'

2

00:00:22,760 --> 00:00:26,120

ALL: Hello, Ben! Come and play with us!

3

00:00:26,120 --> 00:00:30,000

And... # We'll have a...

转换后的word文档内容为:

'Hey, Abadas!'

ALL: Hello, Ben! Come and play with us!

And... # We'll have a...

注意:每一步都要输出相关信息

每一行代码都要给出详细的注释

ChatGPT的回复:

以下是一个使用 python-docx 和 re(正则表达式模块)将 SRT 字幕文件转为 Word 文档的 Python 脚本。请先安装 python-docx 库,可以通过 pip install python-docx 来安装。

import os

import re

from docx import Document

# 设置源文件夹路径

source_dir = 'F:/儿童学习教育/Abadas.适合2岁以上.BBC儿童学习单词的动画'

# 遍历源文件夹中的所有字幕文件

for file_name in os.listdir(source_dir):

# 确保是 SRT 文件

if file_name.endswith('.srt'):

file_path = os.path.join(source_dir, file_name)

print(f'正在处理字幕文件: {file_path}')

with open(file_path, 'r', encoding='utf-8') as f:

content = f.read()

# 使用正则表达式将时间和数字序号去掉

pattern = re.compile(r'\d+\n\d{2}:\d{2}:\d{2},\d+ --> \d{2}:\d{2}:\d{2},\d+\n')

text_only = re.sub(pattern, '', content)

# 创建一个 Word 文档,并将处理后的文本添加到文档中

doc = Document()

doc.add_paragraph(text_only)

# 将 Word 文档保存为一个新文件

word_file_path = file_path.replace('.srt', '.docx')

doc.save(word_file_path)

print(f'已将字幕文件保存为 Word 文档: {word_file_path}')

注意:此脚本假设所有的 SRT 文件都使用 UTF-8 编码。如果你的 SRT 文件使用其他编码,你可能需要修改 open() 函数中的 encoding 参数。此外,脚本假设 SRT 文件的时间戳和文本之间没有额外的空行。如果有额外的空行,你可能需要修改或添加正则表达式来处理它们。最后,这个脚本会直接修改你的文件系统,因此在运行之前请确保你已经备份了原始数据,或者在一个安全的环境下运行这个脚本。在运行这个脚本之前,请确保你的Python环境有足够的权限来读取和写入文件。以上代码未进行错误处理,实际使用时应考虑加入错误处理机制。

转换后的word文档如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/199807.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

了解JVM的相关概述,发现很多全忘了(文末福利)

1、学之前存在的问题 1、你被JVM伤害过吗? 你是否也遇到过这些问题? 运行着的线上系统突然卡死,系统无法访问,甚至直接OOM!想解决线上JVM GC问题,但却无从下手。新项目上线,对各种JVM参数设置一…

echarts 实现3D立体柱状图示例

该示例有如下几个特点: ①实现tooltip自定义样式(echarts 实现tooltip提示框样式自定义-CSDN博客) ②数据为0时,顶部四边形不展示 ③legend图标设置为自定义图片 【第②也是一个难点,我没有找到其他解决办法&#xff…

Linux fork和vfork函数用法

fork和vfork是用于创建新进程的函数,在Linux的C语言编程中非常常见。 fork函数 fork函数是用于创建一个新的进程,新进程是调用进程的副本。新进程将包含调用进程的地址空间、文件描述符、栈和数据。在fork之后,父进程和子进程将并发执行。 …

wpf devexpress在未束缚模式中生成Tree

TreeListControl 可以在未束缚模式中没有数据源时操作,这个教程示范如何在没有数据源时创建tree 在XAML生成tree 创建ProjectObject类实现数据对象显示在TreeListControl: public class ProjectObject {public string Name { get; set; }public string Executor {…

KT142C语音芯片音乐前要空白音才行,声音会被截掉,实际语音是你好,播放变成好

KT142C语音芯片播放音乐前必须有一段空白音才行,不然声音会被截掉一部分,播放 温度1超高,如果前面没有空白音,就会变成 度1超高 出现这个问题,核心的原理在于功放芯片是受控了 这个问题只存在于,配置为DAC…

决策树,sql考题,30个经典sql题目

大数据: 2022找工作是学历、能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 测开的话,你就得学数据库,sql,oracle,尤其sql要学&#x…

计算机网络——数据链路层简解

1. 前言: 数据链路层,即在物理层之上网络层之下,数据链路层的数据交互可以通过mac来确实身份和发送数据。 说到数据链路层这里简单介绍下设备: 网桥(Bridge): 网桥是一种数据链路层设备&#…

Java的IO流-序列化流

对象序列化:把Java对象写入到文件中去 package com.itheima.d3;import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectOutputStream;public class Test1 {public static void main(String[] args) {try(//2、创建一个对象字节输出流…

Java集合大总结——List的简单使用

List简单介绍 鉴于Java中数组用来存储数据的局限性,我们通常使用java.util.List替代数组List集合类中元素有序、且可重复,集合中的每个元素都有其对应的顺序索引。JDK API中List接口的实现类常用的有:ArrayList、LinkedList和Vector。 List…

SourceTree提示128错误

128错误 找到C:\Users\DELL中.gitconfig删除

接口测试需要验证数据库么?

有的接口会返回很多数据,有的接口可能就返回一个状态码及success之类的消息,这些需要验证数据库么?现在在写一个测试框架,配置接口参数和预期返回值,生成xml文件管理用例,用一个比较方法对预期和返回作比较…

PDF文件无密码,如何解密?

PDF文件有两种密码,一个打开密码、一个限制编辑密码,因为PDF文件设置了密码,那么打开、编辑PDF文件就会受到限制。想要解密,我们需要输入正确的密码,但是有时候我们可能会出现忘记密码的情况,或者网上下载P…

使用activiti部署提示不是 ‘NCName‘ 的有效值

排查发现是整个流程图的,流程名称没有填写 修改之后就可以了

【前端学java】语法练习-工具类的封装(13)

往期回顾: 【前端学java】JAVA开发的依赖安装与环境配置 (0)【前端学 java】java的基础语法(1)【前端学java】JAVA中的packge与import(2)【前端学java】面向对象编程基础-类的使用 &#xff08…

【报错记录】解决使用Kotlin写的SpringBoot项目使用Aspect切面无法生效的问题

前言 为了能在SpringBoot使用Kotlin,真的是各种坑都彩礼一遍,这次遇到的问题是Aspect无法对Kotlin代码生效。我这里的使用场景是使用切面切Controller中的方法,用来对接口进行一些初始化和收尾工作。 Aspect在Controller类还是Java代码的时…

亚马逊车灯外贸出口CE认证标准办理解析

车灯是车辆夜间行驶在道路照明的工具,也是发出各种车辆行驶信号的提示工具。车灯一般分为前照灯、尾灯、转向灯等。车灯出口欧盟需要办理CE认证。 CE认证是欧盟对进入欧洲市场的产品强制性的认证标志,是指符合欧盟安全、健康、环境保护等标准和要求的产…

Playcanvas后处理-辉光bloom

(一)Bloom介绍 Bloom(辉光、光晕、泛光)是一种常见的摄像机后处理(PostProcessing)效果,用于再现真实世界相机的成像伪影。这种效果会产生从图像中明亮区域边界延伸的光条纹(或羽毛…

windows11系统如何设置锁屏壁纸

1. 在开始页面里面找到设置 2. 在设置里面找到个性化 3. 按照红色圈出部分操作 个性化锁屏界面 选择 图片 浏览照片 选择一张你觉得好看的图片作为锁屏壁纸 注:如果需要在锁屏后的登录页面显示壁纸 请勾选第三个红圈部分

zabbix-proxy分布式监控

Zabbix是一款开源的企业级网络监控软件,可以监测服务器、网络设备、应用程序等各种资源的状态和性能指标。在大型环境中,如果只有一个Zabbix Server来监控所有的节点,可能会遇到性能瓶颈和数据处理难题。 为了解决这个问题,Zabbi…

【操作系统】文件系统之文件共享与文件保护

文章目录 文件共享硬链接软链接 文件保护口令保护加密保护访问控制 文件共享 为了实现文件的共享,引入了“计数器”字段,当一个文件每被一个用户所共享,那么计数器就加一。如果一个用户删除文件,计数器相应的减一。如果计数器为0…