python读取doc和docx的word文档工具类
需求: 
读取目录下所有word文档,对整行空行的进行删除,输出文件名和word文档的内容 
docx后缀的:
 使用了第三方库 python-docx 来处理 Word 文档。在运行代码之前,您需要使用以下命令安装该库: 
pip install python-docxpython
import os
from docx import Document
class FunnyScriptsReader:
    def __init__(self, directory):
        self.directory = directory
    def process_scripts(self):
        for filename in os.listdir(self.directory):
            if filename.lower().endswith('.doc'):
                file_path = os.path.join(self.directory, filename)
                self.process_script_file(file_path)
    def process_script_file(self, file_path):
        document = Document(file_path)
        file_name = os.path.basename(file_path)
        # 删除整行空行
        for paragraph in document.paragraphs:
            if not paragraph.text.strip():
                runs = paragraph.runs
                for run in runs:
                    run.text = ''
        
        # 输出文件名和文档内容
        print("文件名:", file_name)
        print("文档内容:")
        for paragraph in document.paragraphs:
            if paragraph.text.strip():
                print(paragraph.text)
        print()
# 使用示例
directory = r'D:\BaiduNetdiskDownload\'
reader = FunnyScriptsReader(directory)
reader.process_scripts()python-docx库读取doc后缀的word文档有问题,可以 
win32com库 。
pip install pywin32import os
import win32com.client
# 定义一个函数,用于删除word文档中的空行
def remove_blank_lines(doc):
    paragraphs = doc.Paragraphs
    for paragraph in paragraphs:
        if paragraph.Range.Text.strip() == "":
            paragraph.Range.Delete()
# 定义一个目录路径,用于存放word文档
dir_path = r'D:\BaiduNetdiskDownload'
# 创建一个word应用对象,设置为不可见
word = win32com.client.Dispatch("Word.Application")
word.Visible = False
# 遍历目录下的所有文件,筛选出.doc后缀的文件
for file in os.listdir(dir_path):
    if file.endswith(".doc"):
        # 拼接文件的完整路径
        file_path = os.path.join(dir_path, file)
        try:
            # 打开word文档
            doc = word.Documents.Open(file_path)
            # 调用函数,删除空行
            remove_blank_lines(doc)
            # 输出文件名和文档内容
            print("文件名:", file)
            print("文档内容:", doc.Content.Text)
            # 关闭文档
            doc.Close()
        except Exception as e:
            # 捕获异常,输出错误信息
            print("Error:", e)
# 退出word应用
word.Quit()