作品展示
背景需求
今天将最后3个育婴师操作视频做整理
第1步:视频MP4转MP3
【办公类-40-01】20240311 用Python将MP4转MP3提取音频 (家长会系列一)-CSDN博客文章浏览阅读393次,点赞9次,收藏6次。【办公类-40-01】20240311 用Python将MP4转MP3提取音频 (家长会系列一)https://blog.csdn.net/reasonsummer/article/details/136632973
第2步:音频导入网易云见外平台,导出doc文件
以下这篇实现了将“网易云见外平台”下载的doc文件转docx,并修改内部字体格式(蓝色字体)的需求。
【办公类-21-09】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体”-CSDN博客文章浏览阅读542次,点赞6次,收藏7次。【办公类-21-09】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体”https://blog.csdn.net/reasonsummer/article/details/136495196
生成蓝色文字的docx文件
但是我发现这些文件名后面都有一个5分钟的字样
因此我需要蓝色文字的文件名里没有(5分钟)字样
微调代码
1、原来样式——包含(5分钟)
2、现在样式——去掉包含(5分钟)
代码展示:
'''
目的:制作蓝色字体的育婴师操作步骤说明
1、育婴师三级,视频转音频,上传网易云见外
2、网易云见外下载的doc转docx,
2-1、提取的文件名里没有(5分钟)字样
3、docx批量转换成蓝色字体格式——宋体小四、1.5倍行距、蓝色字体
4、docx文件名不能有+,转为空格
作者:AI对话大师 、阿夏
时间:2024年3月26日
'''
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.client
print('---------第1步:doc 转 docx---------')
folder_path = r'C:\Users\jg2yXRZ\OneDrive\桌面\01' # 替换为你的文件夹路径
# 遍历文件夹中的所有文件
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][:-5] + ".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 OxmlElement
def set_run_font(run, font_name, font_size, font_color):
r = run._element
rPr = 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 os
# folder_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('所有文件名替换完成')
把所有的内容分别归类到相应文件夹内
去掉(5分钟)的文字,显示这个文档是蓝色字体,最后可以被提取出来做合并。