任务:把docx文档批量转换成txt,首先让deepseek写了一段代码,但是转换失败。用的是最流行的python-docx库来读取docx文档,但是始终无法读取成功,换成pywin32库就解决问题了。
在deepseek中输入提示词:
写一个Python脚本,打开文件夹:F:\AI自媒体内容\,用pywin32库把里面所有的docx文档内容读取出来,然后保存到txt文档中,文件名保持一致,也保存在同一个文件夹中。一步步的思考,但是代码都整合在一起
源代码:
import os
import win32com.client as win32
# 定义源文件夹路径
source_folder = r'F:\AI自媒体内容'
# 初始化Word应用程序
word_app = win32.gencache.EnsureDispatch('Word.Application')
word_app.Visible = False # 设置Word应用程序为不可见
# 遍历文件夹中的所有.docx文件
for filename in os.listdir(source_folder):
if filename.endswith('.docx'):
# 构建完整的文件路径
file_path = os.path.join(source_folder, filename)
# 打开.docx文件
try:
doc = word_app.Documents.Open(file_path)
except Exception as e:
print(f"无法打开文件 {filename},错误信息:{e}")
continue
# 读取文档内容
content = doc.Content.Text
# 创建新的.txt文件名
txt_filename = filename.replace('.docx', '.txt')
# 将内容写入.txt文件
with open(os.path.join(source_folder, txt_filename), 'w', encoding='utf-8') as f:
f.write(content)
# 关闭Word文档
doc.Close()
print(f"文件 {filename} 已成功转换为 {txt_filename}")
# 关闭Word应用程序
word_app.Quit()
print("转换完成!")