从文件列表中打开 docx 文档

Open docx documents from list of files

我有一长串 docx 文件存储在几个目录中,我需要在这些文件中搜索包含特定字符串的文档。

我的所有文件都在这样的列表中(来自 pandas df 列):

文件=['C:\AAA\BBB\file1.docx','G:\CCC\DDD\file2.docx'...]

我也有这样一个字符串列表: 字符串=['hksdhus','jshaòohse','iueoiwu']

这是我的代码:

    for string in strings:
        for file in files:
             doc=docx.Document(file)
             for para in doc.paragraphs:
                 if string in para.text:
                     print(string+' is in '+file)
                     break
                 else:
                     print(string+' not found')
                     break

它总是给我“找不到字符串”,因为我认为它根本没有读取文件;如果我尝试 print(para.text) 它会让我一片空白。

谁能帮我解决这个问题?

提前感谢您的任何建议

您的代码只检查第一段,因为无论是否找到字符串,在检查第一段之后您都有 break

删除 3 行 else 块并重试。您可以只删除最后一行的 break,但如果您将它留在那儿,那将为文档中的每个段落打印一条 string not found 消息。