Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从.docx文件中的表中提取文本?_Python_Docx_Python Docx - Fatal编程技术网

Python 如何从.docx文件中的表中提取文本?

Python 如何从.docx文件中的表中提取文本?,python,docx,python-docx,Python,Docx,Python Docx,我想使用python从.docx文件中的表中提取文本以进行进一步分析。Im使用以下代码: document = Document(path_to_your_docx) tables = document.tables for table in tables: for row in table.rows: for cell in row.cells: for paragraph in cell.paragraphs:

我想使用python从.docx文件中的表中提取文本以进行进一步分析。Im使用以下代码:

document = Document(path_to_your_docx)
tables = document.tables
for table in tables:
    for row in table.rows:
        for cell in row.cells:
            for paragraph in cell.paragraphs:
                print(paragraph.text)
但是在这个表格的单元格中似乎还有另一个“表格”,所以我无法提取这个部分(如附图所示)。当我使用上面的代码时,我无法获取“是/否”文本

我还尝试像在表中一样遍历单元格,但我得到的错误是,单元格没有表属性。有什么建议吗


谢谢。

我有一个解决这个问题的方法。我没有使用库python docx从docx文件中提取文本,而是使用库docx2txt(提取all文本),然后我只需要在字符串中找到特定的单词

text = docx2txt.process(file)

q = "Example1"
result = text[text.find(q)+len(q):].split()[0]

对于第1列上的每个值,这会给出第2列中的“是”或“否”(在上面的示例中,它给出了Yes)。

请不要粘贴代码的屏幕截图。这是可行的,但docx2python将提取表。该嵌套表将需要一些后期处理,但输出在文档中有明确描述。