【办公类-21-09】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体”
作品展示:
背景需求:
一、视频处理
1、育婴师培训的现场视频
2、下载视频,将视频换成考题名称
二、音频
视频用格式工厂转成MP3音频
3、转文字doc
把音频放入“网易云见外工作台”转换为“文字"
等待5分钟,音频文字会被写成文字doc
音频转文本完成了
都是doc格式的
我想把里面的字体改成“宋体 小四、1.5倍行距,蓝色字体”
是否可以利用Python,把三份内容doc内容批量改成蓝色效果 呢
第一步:doc转docx(doc有时不能读写)
三份文件放在“”123文件夹”
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——还是黑色字体
第二步:读取docx黑色文字,改成宋体小四、1.5倍行距、蓝色字体
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('所有文档处理完成')
运用Python快速将三篇docx的文字替换成其他字体和颜色,不用一篇篇手动更改字体、行距、颜色!(* ̄︶ ̄)
为什么要改成蓝色字体呢
因为操作题中语言说的部分很多,所以先把所有的导师说的话当成设置成蓝色字体,然后再观看视频,补充红色文字的动作。
还有一个美中不足的地方
第三步:文件名称里面的“+”替换成“空”
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('所有文件名替换完成')
第四步:哪一种蓝色?
之前7篇都是用'0070CO'浅蓝色,所以这里也改成浅蓝色
完整代码
'''
目的:制作蓝色字体的育婴师操作步骤说明
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、目前我发现:用讯飞录音笔可以用个讯飞听见转成文字(专家指导录音),但如果手机拍摄的视频,就不能用讯飞听见转成文字。因此要用到“网易云见外工作台”。
工作中会经常用到“网易云见外”转录视频,因此通过这个代码去修正文字的格式,比较实用。
相关文章:

【办公类-21-09】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体”
作品展示: 背景需求: 一、视频处理 1、育婴师培训的现场视频 2、下载视频,将视频换成考题名称 二、音频 视频用格式工厂转成MP3音频 3、转文字doc 把音频放入“网易云见外工作台”转换为“文字" 等待5分钟,音频文字会被写…...

Unity DropDown 组件 详解
Unity版本 2022.3.13f1 Dropdown下拉菜单可以快速创建大量选项 一、 Dropwon属性详解 属性:功能:Interactable此组件是否接受输入?请参阅 Interactable。Transition确定控件以何种方式对用户操作进行可视化响应的属性。请参阅过渡选项。Nav…...

Spring AOP常见面试题
目录 一、对于AOP的理解 二、Spring是如何实现AOP的 1、execution表达式 2、annotation 3、基于Spring API,通过xml配置的方式。 4、基于代理实现 三、Spring AOP的实现原理 四、Spring是如何选择使用哪种动态代理 1、Spring Framework 2、Spring Boot 五…...
Java学习笔记14——常量与变量
曾和儿子分享过所谓计算机程序,都是编写代码进行“数据处理和处理数据”而已。任何编程语言编写何种应用,数据都必须以某种方式表示。掌握变量和常量的用法,可以使代码的可维护性、可读性大大提高。 一、常量 常量就是在程序中固定不变的量…...
代码随想录算法训练营第四十四天 | 卡码网52. 携带研究材料 ,LeetCode 518. 零钱兑换 II , 377. 组合总和 Ⅳ
题目链接:52. 携带研究材料(第七期模拟笔试) (kamacoder.com) #include<bits/stdc.h> using namespace std;int main(){ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int n,v;cin>>n>>v;vector<int> dp(v1,…...

Android Kotlin知识汇总(四)Kotlin 协程实践
Kotlin的重要优势及特点之——结构化并发 Kotlin 协程是一种并发设计模式,可以在 Android 平台上让异步代码像阻塞代码一样易于使用。协程可大幅简化后台任务管理,例如网络调用、本地数据访问等任务的管理。 简单来说,协程就是一种轻量级的非…...

python基础篇--学习记录2
1.深浅拷贝 l1 ["张大仙","徐凤年",["李淳刚","邓太阿"]] # 变量名对应的就是内存地址,这里就是将l1的内存地址给了l2 # 现在两个变量指向同一个内存地址,l1变化l2也会变化 l2 l1 现在的需求是l2是l1的拷贝版本,但是两者是完全分割…...

自动化运维工具Ansible
一.Ansible基本内容 1.定义 Ansible是基于模块工作的,只是提供了一种运行框架,本身没有完成任务的能力,真正操作的是Anisble的模块。每个模块都是独立的、实现了批量系统配置、批量程序部署、批量运行命令等功能。 2.特点与优势 优势&…...

VR全景在智慧园区中的应用
VR全景如今以及广泛的应用于生产制造业、零售、展厅、房产等领域,如今720云VR全景更是在智慧园区的建设中,以其独特的优势,发挥着越来越重要的作用。VR全景作为打造智慧园区的重要角色和呈现方式已经受到了越来越多智慧园区企业的选择和应用。…...

用信号的方式回收僵尸进程
当子进程退出后,会给父进程发送一个17号SIGCHLD信号,父进程接收到17号信号后,进入信号处理函数调用waitpid函数回收僵尸进程若多个子进程同时退出后,这是切回到父进程,此时父进程只会处理一个17号信号,其他…...

计算机服务器中了locked勒索病毒怎么解密,locked勒索病毒解密流程
科技的发展带动了企业生产,越来越多的企业开始利用计算机服务器办公,为企业的生产运营提供了极大便利,但随之而来的网络安全威胁也引起了众多企业的关注。近日,云天数据恢复中心接到许多企业的求助,企业的计算机服务器…...

【C语言刷题】——初识位操作符
【C语言刷题】——初识位操作符 位操作符介绍题一、 不创建临时变量(第三个变量),实现两个数的交换(1)法一(2)法二 题二、 求一个数存储在内存中的二进制中“一”的个数(1࿰…...

Python 对Excel工作表中的数据进行排序
在Excel中,排序是整理数据的一种重要方式,它可以让你更好地理解数据,并为进一步的分析和报告做好准备。本文将介绍如何使用第三方库Spire.XLS for Python通过Python来对Excel中的数据进行排序。包含以下三种排序方法示例: 按数值…...

Python对头发二维建模(考虑风力、重力)
目录 一、背景 二、代码 一、背景 数值方法被用于创建电影、游戏或其他媒体中的计算机图形。例如,生成“逼真”的烟雾、水或爆炸等动画。本文内容是对头发的模拟,要求考虑重力、风力的影响。 假设: 1、人的头部是一个半径为10厘米的球体。…...

Python基础快速入门
Python基础快速入门 前置知识 Python Python是一种广泛使用的高级编程语言,以其易于学习和使用的语法而闻名。以下是Python的一些主要特点: 高级语言:Python是一种高级语言,这意味着它提供了较高层次的抽象,使编程更…...

C++的学习
代码练习 输入一个字符串,统计其中大写字母、小写字母、数字、空格以及其他字符的个数 #include <iostream>using namespace std;int main() {cout << "请输入一个字符串" << endl;string str;getline(cin,str);int capital 0;int l…...

工地安全反光衣穿戴监测报警摄像机
工地安全反光衣穿戴监测报警摄像机是为了提高工地施工人员的安全意识和监管效率而设计的。这种设备结合了反光衣、监测系统和报警摄像机的功能,可以有效减少工地事故的发生。 首先,工地安全反光衣是一种具有高度可见度的服装,能够使穿戴者在夜…...

UNIAPP微信小程序中使用Base64编解码原理分析和算法实现
为何要加上UNIAPP及微信小程序,可能是想让检索的翻围更广把。😇 Base64的JS原生编解码在uni的JS引擎中并不能直接使用,因此需要手写一个原生的Base64编解码器。正好项目中遇到此问题,需要通过URLLink进行小程序跳转并携带Base64参…...

人工智能|机器学习——K-means系列聚类算法k-means/ k-modes/ k-prototypes/ ......(划分聚类)
1.k-means聚类 1.1.算法简介 K-Means算法又称K均值算法,属于聚类(clustering)算法的一种,是应用最广泛的聚类算法之一。所谓聚类,即根据相似性原则,将具有较高相似度的数据对象划分至同一类簇,…...

注意力、自注意力和多头注意力的区别
本文作者: slience_me 注意力、自注意力和多头注意力的区别 理解注意力(Attention)、自注意力(Self-Attention)和多头注意力(Multi-Head Attention)之间的区别非常重要,因为它们是自…...

IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...

23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...

3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...

基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...

Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...

算术操作符与类型转换:从基础到精通
目录 前言:从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符:、-、*、/、% 赋值操作符:和复合赋值 单⽬操作符:、--、、- 前言:从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...