【问题标题】:Getting text from doc and docx从 doc 和 docx 获取文本
【发布时间】:2017-04-25 12:24:15
【问题描述】:

我正在使用一台装有 Windows 7 和 python 3.3 的计算机。 在我的组织中,我们有数千个没有组织的文档。 我想创建一个程序来打开 doc/docx 文件,在文本中搜索某些关键字,然后重新排列文档。 我正在寻找一种在单词文件(doc/docx)的文本中搜索某些单词的方法,它必须在 Windows 上,并且必须能够同时搜索 doc 和 docx。

有什么想法吗?

【问题讨论】:

    标签: python-3.x search docx doc


    【解决方案1】:

    .docx 文档是 OpenXML 格式的 Zip 存档:您必须先将其解压缩。

    之后你可以运行:

    # Import the module
    from docx import *
    
    # Open the .docx file
    document = opendocx('A document.docx')
    
    # Search returns true if found    
    search(document,'your search string')
    

    【讨论】:

    • 我有成千上万的文件,我不能每一个都解压,这不切实际。
    • 但它不处理 doc :-(
    【解决方案2】:

    可以使用 texttract 库。它同时处理“doc”和“docx”

    import textract
    text = textract.process("path/to/file.extension")
    

    您甚至可以使用“antiword”(sudo apt-get install antiword)然后将 doc to first 转换为 docx,然后通读 docx2txt。

    antiword 文件名.doc > 文件名.docx 最终,后端的texttract使用了antiword。

    【讨论】:

    • 安装完成,最后失败... :-( 似乎它不适用于 python 3.3 :-(
    • 可以发截图吗?
    • 通过命令提示符 pip install textract 安装时,它以红色显示“构建失败”,然后以红色显示更多行并关闭窗口...太快了,我无法截屏 XD 有没有办法冷冻它?
    • 很棒的库,但安装不通过 Python 3.3
    • 安装通过 brew。对于那些感兴趣的人,您还可以将 .doc 文件转换为 pdf 保留图像,然后使用 pytesseract 使用 OCR 提取文本。
    猜你喜欢
    • 2011-07-29
    • 2017-09-17
    • 1970-01-01
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多