【办公类-21-09】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体”

作品展示:

a431ace260ea4fdaa197da5cff3f0372.png

背景需求:

一、视频处理

1、育婴师培训的现场视频

ce24a405430e434db7211f869760a8cd.png

2、下载视频,将视频换成考题名称

fb0ecb287f214655839f79319873d9e6.png

958d056285bf486e88596b8ae8a1acb5.pngb02530fca9fe4f079ea28e5f4bf76204.png

二、音频

视频用格式工厂转成MP3音频

b6f4a51543a24ece8286c4c4958e5e7f.png

a18b0e0e537d433eb71645bf22688f95.png

d3d5b89ead8949d68a2c1e21fd6577f7.png

6d6471d8afa3475db47584506f950095.png

83f00a498bc8481e8ab5eecc98bf73da.png

e7a0a0aa59ea4440ac7e227fd6e86265.png

3、转文字doc

把音频放入“网易云见外工作台”转换为“文字"

051836c76ca7462c9d6d765fdcdecbae.png

50f1b5350483469cb8ab28d2b6887d8a.pngc7f45e89c708465596ea0c526559e916.png

3ec637b1c46b4b1999f3fba10545105e.png366636ea584449a6a316d405e712d9d5.png1c6a49f26fb5404cbce876bdbfb76aa9.png389c32a09bb64b06892d5da34b3e869a.png7b0350841a77486f8972149579c396b4.png

5f9fc15c4d444bd08491b9eda326a218.png

等待5分钟,音频文字会被写成文字doc

 

37391eac131343029026ca3398944cf0.png

音频转文本完成了

d260f77d67554a9981cb5f16cb392d7e.png

73e042313ffb4e808d7906f8e5aa4e3e.png

都是doc格式的

6aab3f24b82d4e9faf1c61b1a0bb704e.png

 

e1acb033c48b4531b42d4138243dc17c.png

 

我想把里面的字体改成“宋体 小四、1.5倍行距,蓝色字体”

a6363625dfca49e781cd73e0ef642b4a.png

是否可以利用Python,把三份内容doc内容批量改成蓝色效果 呢

 

第一步:doc转docx(doc有时不能读写)

三份文件放在“”123文件夹”

6f8e46d4f21d4425a035aa5f9fc00b0b.png

import os
from docx import Document
from docx.shared import Pt
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.enum.text import WD_COLOR_INDEX
import win32com.client# doc 转 docxfolder_path = r'D:\04三级操作题\123'  # 替换为你的文件夹路径# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):if file_name.endswith(".doc"):file_path = os.path.join(folder_path, file_name)# 创建Word应用程序对象word_app = win32com.client.Dispatch("Word.Application")# 打开原始的.doc文件doc = word_app.Documents.Open(file_path)# 将文件另存为.docx格式docx_file_path = os.path.splitext(file_path)[0] + ".docx"doc.SaveAs(docx_file_path, 12)  # 使用参数12表示将文件另存为.docx格式# 关闭原始的.doc文件doc.Close()# 删除原始的.doc文件os.remove(file_path)# 退出Word应用程序word_app.Quit()

在原文件夹里,直接从doc变成docx——还是黑色字体

7c63305a6565461a80c802c707aa1c42.png

a30610834e49479faeff476bb62b8ea6.png

 

第二步:读取docx黑色文字,改成宋体小四、1.5倍行距、蓝色字体

7c63305a6565461a80c802c707aa1c42.png

import os
from docx import Document
from docx.shared import Pt
from docx.shared import RGBColor
from docx.oxml.ns import qn
from docx.oxml import OxmlElementdef set_run_font(run, font_name, font_size, font_color):r = run._elementrPr = r.get_or_add_rPr()if font_name:rFonts = OxmlElement('w:rFonts')rFonts.set(qn('w:ascii'), font_name)rFonts.set(qn('w:eastAsia'), font_name)rPr.append(rFonts)if font_size:sz = OxmlElement('w:sz')sz.set(qn('w:val'), str(font_size * 2))rPr.append(sz)if font_color:color = OxmlElement('w:color')color.set(qn('w:val'), font_color)rPr.append(color)# 一级文件夹路径
folder_path = r'D:\04三级操作题\123'  # 替换为你的文件夹路径# 遍历文件夹内的所有文件
for file_name in os.listdir(folder_path):if file_name.endswith('.docx'):# 打开 Word 文档doc_path = os.path.join(folder_path, file_name)doc = Document(doc_path)# 遍历文档中的段落和文字for para in doc.paragraphs:for run in para.runs:# 修改文字属性为宋体、小四、1.5倍行距、蓝色字体set_run_font(run, '宋体', 12, '0000FF')para.paragraph_format.line_spacing = 1.5 # para.paragraph_format.line_spacing_rule = WD_LINE_SPACING.ONE_POINT_FIVE# 保存修改后的文档modified_doc_path = os.path.join(folder_path, file_name)doc.save(modified_doc_path)print(f'{file_name} 文档文字样式修改完成')print('所有文档处理完成')

f2f50125f7b044eebf2d475fe80835e6.png3b32b06d02e949deb46608723085b4e9.pnge6927a398db54dbcbe8eb85a5c0d508b.png

运用Python快速将三篇docx的文字替换成其他字体和颜色,不用一篇篇手动更改字体、行距、颜色!(* ̄︶ ̄)

 

为什么要改成蓝色字体呢

因为操作题中语言说的部分很多,所以先把所有的导师说的话当成设置成蓝色字体,然后再观看视频,补充红色文字的动作。

47df2469cfea4266b30120bb1df2e127.png

 

还有一个美中不足的地方

第三步:文件名称里面的“+”替换成“空”

59a01857dc3d447eb59e3796c2d67670.png


print('---------第3步:文件名中的“+”改成“ ”---------')
import osfolder_path = r'D:\04三级操作题\123'  # 替换为你的文件夹路径# 遍历文件夹内的所有文件
for file_name in os.listdir(folder_path):if file_name.endswith('.docx'):new_file_name = file_name.replace('+', ' ')  # 将加号替换为空格os.rename(os.path.join(folder_path, file_name), os.path.join(folder_path, new_file_name))print(f'{file_name} 重命名为 {new_file_name}')print('所有文件名替换完成')

87a73ae169954120ae8fe4aa7e2c1984.png

 

第四步:哪一种蓝色?

e6a813d8c1704f329f1865a48ca071f4.png

6990abc83ad845b0ae0010af0e62ed5b.png

bf90287539d845e9a8e73ee8e6d0dace.png

d7c0a637b5434dd89c52db55dfdcf7c0.png

之前7篇都是用'0070CO'浅蓝色,所以这里也改成浅蓝色

a431ace260ea4fdaa197da5cff3f0372.png

 完整代码


'''
目的:制作蓝色字体的育婴师操作步骤说明
1、育婴师三级,视频转音频,上传网易云见外
2、网易云见外下载的doc转docx
3、docx批量转换成蓝色字体格式——宋体小四、1.5倍行距、蓝色字体
4、docx文件名不能有+,转为空格
作者:AI对话大师 、阿夏
时间:2024年3月7日
'''import os,time
from docx import Document
from docx.shared import Pt
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.enum.text import WD_COLOR_INDEX
import win32com.clientprint('---------第1步:doc 转 docx---------')folder_path = r'D:\04三级操作题\123'  # 替换为你的文件夹路径# 遍历文件夹中的所有文件
for file_name in os.listdir(folder_path):if file_name.endswith(".doc"):file_path = os.path.join(folder_path, file_name)# 创建Word应用程序对象word_app = win32com.client.Dispatch("Word.Application")# 打开原始的.doc文件doc = word_app.Documents.Open(file_path)# 将文件另存为.docx格式docx_file_path = os.path.splitext(file_path)[0] + ".docx"doc.SaveAs(docx_file_path, 12)  # 使用参数12表示将文件另存为.docx格式# 关闭原始的.doc文件doc.Close()# 删除原始的.doc文件os.remove(file_path)# 退出Word应用程序word_app.Quit()time.sleep(2)print('---------第2步:黑色字体 转 蓝色字体---------')
import os
from docx import Document
from docx.shared import Pt
from docx.shared import RGBColor
from docx.oxml.ns import qn
from docx.oxml import OxmlElementdef set_run_font(run, font_name, font_size, font_color):r = run._elementrPr = r.get_or_add_rPr()if font_name:rFonts = OxmlElement('w:rFonts')rFonts.set(qn('w:ascii'), font_name)rFonts.set(qn('w:eastAsia'), font_name)rPr.append(rFonts)if font_size:sz = OxmlElement('w:sz')sz.set(qn('w:val'), str(font_size * 2))rPr.append(sz)if font_color:color = OxmlElement('w:color')color.set(qn('w:val'), font_color)rPr.append(color)# 一级文件夹路径
folder_path = r'D:\04三级操作题\123'  # 替换为你的文件夹路径# 遍历文件夹内的所有文件
for file_name in os.listdir(folder_path):if file_name.endswith('.docx'):# 打开 Word 文档doc_path = os.path.join(folder_path, file_name)doc = Document(doc_path)# 遍历文档中的段落和文字for para in doc.paragraphs:for run in para.runs:# 修改文字属性为宋体、小四、1.5倍行距、蓝色字体# set_run_font(run, '宋体', 12, '0000FF')set_run_font(run, '宋体', 12, '0070C0')para.paragraph_format.line_spacing = 1.5 # para.paragraph_format.line_spacing_rule = WD_LINE_SPACING.ONE_POINT_FIVE# 保存修改后的文档modified_doc_path = os.path.join(folder_path, file_name)doc.save(modified_doc_path)print(f'{file_name} 文档文字样式修改完成')print('所有文档处理完成')time.sleep(2)print('---------第3步:文件名中的“+”改成“ ”---------')
import osfolder_path = r'D:\04三级操作题\123'  # 替换为你的文件夹路径# 遍历文件夹内的所有文件
for file_name in os.listdir(folder_path):if file_name.endswith('.docx'):new_file_name = file_name.replace('+', ' ')  # 将加号替换为空格os.rename(os.path.join(folder_path, file_name), os.path.join(folder_path, new_file_name))print(f'{file_name} 重命名为 {new_file_name}')print('所有文件名替换完成')

 

 

感悟:

1、育婴师每次培训3篇内容,其实手动改格式也很快的,但是能用Python批量解决的,我就不想人工去重复操作了。

2、目前我发现:用讯飞录音笔可以用个讯飞听见转成文字(专家指导录音),但如果手机拍摄的视频,就不能用讯飞听见转成文字。因此要用到“网易云见外工作台”。

工作中会经常用到“网易云见外”转录视频,因此通过这个代码去修正文字的格式,比较实用。

 

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

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

相关文章

Python元组(Tuple)深度解析!

目录 1. 什么是元组? 2. 创建元组 3.访问元组 4.元组的运算 5.修改元组不可行 6.元组的应用场景 前面的博客里,我们详细介绍了列表(List)这一种数据类型,现在我们来讲讲与列表相似的一种数据类型,元组…

【Python】【Matplotlib】fig, ax = plt.subplots() 返回的fig和ax是什么?

【Python】【Matplotlib】fig, ax plt.subplots() 返回的fig和ax是什么? 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&a…

求职干货!如何自信地进行自我介绍和面试问答!

面试在求职过程中扮演着至关重要的角色。它不仅是雇主评估候选人能力和适应性的关键环节,也是候选人展示自我、展示技能和经验的绝佳机会。通过面试,雇主可以更直接地了解候选人的沟通能力、解决问题的能力以及团队合作精神,这些都是成功工作…

ChatGPT GPT4科研应用、数据分析与机器学习、论文高效写作、AI绘图技术

原文链接:ChatGPT GPT4科研应用、数据分析与机器学习、论文高效写作、AI绘图技术https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247596849&idx3&sn111d68286f9752008bca95a5ec575bb3&chksmfa823ad6cdf5b3c0c446eceb5cf29cccc3161d746bdd9f2…

实例成员、静态成员

一、静态成员先于实例成员存在 类被加载到内存时,静态变量分配内存空间,静态方法分配入口地址 只有创建对象之后,实例变量分配内存空间,实例方法分配入口地址 当再创建对象时,实例方法不再分配入口地址,…

【Java从发入门到精通】Java StringBuffer 和 StringBuilder 类

Java StringBuffer 和 StringBuilder 类 当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。 和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。 在使用 Stri…

蓝桥杯[OJ 3412]-最小化战斗力差距-CPP-贪心

目录 一、问题描述: 二、整体思路: 三、代码: 一、问题描述: 二、整体思路: 首先每个值都有可能为min(b),那么对于每个可能为min(b)的值,要使得max(a)尽可能小,因此枚举所有相差最…

高颜值抓包工具Charles,实现Mac和IOS端抓取https请求

Hi,大家好。在进行测试的过程中,不可避免的会有程序报错,为了能更快修复掉Bug,我们作为测试人员需要给开发人员提供更准确的报错信息或者接口地址,这个时候就需要用到我们的抓包工具。 常见的抓包工具有Fiddler、Char…

【NR技术】 3GPP支持无人机服务的关键性能指标

1 性能指标概述 5G系统传输的数据包括安装在无人机上的硬件设备(如摄像头)收集的数据,例如图片、视频和文件。也可以传输一些软件计算或统计数据,例如无人机管理数据。5G系统传输的业务控制数据可基于应用触发,如无人机上设备的开关、旋转、升…

Oracle之ADG与DG的区别?

在上云后的Oracle数据灾备场景中,我们经常听到DBA迁移工程师讲到“在这个项目中用ADG进行数据实时备份,ADG比DG更好!”。究竟ADG作Oracle数据灾备的优势在什么地方? 一、ADG主要解决了DG时代读写不能并行的问题 DG时代的数据同步…

c# winform部门管理系统

c# winform部门管理系统 数据库SQL语句脚本代码 CREATE TABLE Department(DepartmentID INT PRIMARY KEY IDENTITY(1,1),Name NVARCHAR(50) NOT NULL ); SELECT * FROM Department -- 插入部门数据 INSERT INTO Department (Name) VALUES (人力资源部); INSERT INTO Departmen…

【c 语言 】移位操作符详解

🎈个人主页:豌豆射手^ 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:C语言 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步&…

C++感受1-打开浏览器,线上玩转C++

介绍了五款在线编译、编译、运行的C线上环境。并选择其中的 “在线GDB” 网站动手编写、运行第一个C程序 “Hello World”,同时和线下IDE进行对比。 1. 课堂视频 打开浏览器,线上玩转C 2. 在线C编译环境对比 onlinegdb : www.onlinegdb.comr…

汽车大灯汽车尾灯破裂裂纹破损破洞掉角崩角等问题能修复吗?修复灯罩需要多久时间?

汽车大灯汽车尾灯破裂裂纹破损破洞掉角崩角等问题基本是可以修复的。 修复汽车灯罩的时间取决于多个因素,如灯罩的破损程度、修复方法的选择以及维修店的工作效率等。 一般来说,如果灯罩的破损程度较轻,仅需要进行简单的修复或翻新&#xf…

如何考上东南大学计算机学院?

东南大学招生学院是计算机科学与工程学院、苏州联合研究生院,复试公平,不歧视双非考生,985院校中性价比较高,但近年热度在逐年上涨,需要警惕。 建议报考计算机科学与工程学院081200计算机科学与技术专业目标分数为380…

帮管客CRM(jiliyu)接口SQL注入漏洞

文章目录 前言声明一、漏洞描述二、影响版本三、漏洞复现四、修复建议 前言 帮管客CRM客户管理系统专注于为企业提供crm客户关系管理、crm管理系统、crm软件产品及企业销售管理流程解决方案服务,助力企业业绩增长。 声明 请勿利用文章内的相关技术从事非法测试,由…

jdk17出现错误无法初始化主类 和NoClassDefFoundError:Vector的解决方法

概述:网上流传文章大多都是编译和运行都加下面这串代码 --add-modulesjdk.incubator.vector我估计他们大多都是复制粘贴的文章,这种东西就是电子垃圾,在idea中,大多人都习惯用maven来构建java项目,接下来我将讲解使用…

【C++】string学习 — 手搓string类项目

手搓string项目 1 string类介绍2 功能描述3 代码实现3.0 基础框架3.1 构造函数 和 析构函数3.2 流操作符重载 和 尾插扩容3.4 运算符重载3.5 实用功能3.6 迭代器模拟 总结Thanks♪(・ω・)ノ谢谢阅读!!!下一篇…

LeetCode:206.反转链表

206. 反转链表 解题过程 /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}* ListNode(int val) { this.val val; }* ListNode(int val, ListNode next) { this.val val; this.next next; …

如何使用 Langchain、Ollama 和 Streamlit 构建 RAG

一、先决条件:您需要了解什么 在深入讨论技术细节之前,我们先概述一下先决条件。Python 的基础知识至关重要,因为它是我们将使用的主要语言。熟悉机器学习和自然语言处理的基本概念将帮助您更轻松地掌握这些概念。此外,对 Langch…