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

时间:2018-03-05 12:17:22

标签: python docx python-docx

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

[PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status) {
    switch (status) {
        case PHAuthorizationStatusAuthorized:
            NSLog(@"PHAuthorizationStatusAuthorized");
            break;
        case PHAuthorizationStatusDenied:
            NSLog(@"PHAuthorizationStatusDenied");
            break;
        case PHAuthorizationStatusNotDetermined:
            NSLog(@"PHAuthorizationStatusNotDetermined");
            break;
        case PHAuthorizationStatusRestricted:
            NSLog(@"PHAuthorizationStatusRestricted");
            break;
    }
}];

但似乎还有另一个"表"在此表的单元格中,因此我无法提取此部分(如附图所示)。当我使用上面的代码时,我无法获取"是/否"文本。

我也试过迭代遍历单元格,就像在表格中一样,但是我得到了单元格没有表格属性的错误。有什么建议吗?

The table looks like this

code behind table creation

感谢。

1 个答案:

答案 0 :(得分:1)

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

text = docx2txt.process(file)

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

这给了我"是"或"否"来自Column2,对于Column1上的每个值(在上面的示例中,它提供)。