用Python从Word文档中提取文本和图片

王林
发布: 2023-08-28 18:21:07
原创
2295人浏览过

从word文档中提取内容使我们能够将它们用于其他操作,例如将内容存储在数据库中、将内容导入到其他程序中、用于人工智能训练和创建其他文档。 spire.doc for python 可以轻松从 word 文档中提取文本和图像,无需大量复制和粘贴或复杂的代码。本文介绍如何使用简单的代码从 word 文档中提取并保存文本和图像内容。

为 Python 导入 Spire.Doc

在使用此工具编辑 Word 文档之前,您必须将其导入项目中。可以从Spire.Doc for Python官网下载或者直接用pip安装。代码如下所示:

pip install Spire.Doc
pip install plum-dispatch==1.7.4
登录后复制
进入全屏模式 退出全屏模式

Musterdokument

用Python从Word文档中提取文本和图片

从Word文档中提取文本并写入TXT文件

Spire.Doc for Python 的 Document.GetText() 方法可以检索 Word 文档中的所有文本并将其作为字符串返回。我们可以将返回的字符串写入文本文件中进行存储。步骤如下:

立即学习Python免费学习笔记(深入)”;

  • 创建一个文档对象。
  • 使用 Document.LoadFromFile() 方法加载 Word 文档。
  • 使用 Document.GetText() 方法从文档中获取文本。
  • Den abgerufenen Text in eine Textdatei schreiben.

代码贝斯皮尔

Python

Copy
from turtle import st
from spire.doc import *
from spire.doc.common import *

def WriteAllText(fname:str,text:List[str]):
        fp = open(fname,"w")
        for s in text:
            fp.write(s)
        fp.close()

inputFile = "Beispiel.docx"
outputFile = "Extrahierter Text.txt"

#Document-Objekt erstellen  
document = Document()

#Word-Dokument laden
document.LoadFromFile(inputFile)

#Text aus Dokument abrufen
text = document.GetText()

#Text in Textdatei schreiben
WriteAllText(outputFile, text)
document.Close()
登录后复制
进入全屏模式 退出全屏模式

Extrahierter Text

佳蓝智能应答系统
佳蓝智能应答系统

类似智能机器人程序,以聊天对话框的界面显示,通过输入问题、或点击交谈记录中的超链接进行查询,从而获取访客需要了解的资料等信息。系统自动保留用户访问信息及操作记录。后台有详细的设置和查询模块。适用领域:无人职守的客服系统自助问答系统智能机器人开发文档、资源管理系统……基本功能:设置对话界面的显示参数设置各类展示广告根据来访次数显示不同的欢迎词整合其他程序。

佳蓝智能应答系统 4
查看详情 佳蓝智能应答系统

用Python从Word文档中提取文本和图片

Bilder aus Word-Dokument extrahieren und speichern

Das Extrahieren von Bildern ist etwas komplexer. Man muss prüfen, ob das untergeordnete Objekt des Dokumentenelements ein Bild oder ein zusammengesetztes Objekt ist. Bei einem Bild wird es gespeichert, bei einem zusammengesetzten Objekt muss geprüft werden, ob dessen untergeordnete Objekte Bilder enthalten. Die Schritte:

  • 创建一个文档对象。
  • 使用 Document.LoadFromFile() 方法加载 Word 文档。
  • Eine Warteschlange für zusammengesetzte Objekte erstellen und die Dokumentenelemente hinzufügen.
  • Eine Liste zum Speichern der extrahierten Bilder erstellen.
  • Die Dokumentenelemente durchlaufen und die untergeordneten Objekte jedes Knotens durchlaufen, um zu prüfen, ob es sich um ein zusammengesetztes Objekt oder Bildobjekt handelt.
  • Prüfen, ob das untergeordnete Element ein Bildobjekt ist. Wenn ja, die Bilddaten extrahieren und zur Liste hinzufügen.
  • Prüfen, ob das untergeordnete Element ein zusammengesetztes Objekt ist. Wenn ja, zur Warteschlange hinzufügen und weiter prüfen.
  • Bilder in einen Ordner speichern.

代码贝斯皮尔

Python

Copy
import queue
from spire.doc import * 
from spire.doc.common import *
import os

outputPath = "Bilder/"
inputFile = "Beispiel.docx"

if not os.path.exists(outputPath):
    os.makedirs(outputPath)

#Document-Objekt erstellen
document = Document()  

#Word-Dokument laden
document.LoadFromFile(inputFile)

#Warteschlange erstellen und Dokumentenelemente hinzufügen
nodes = queue.Queue()
nodes.put(document)

#Liste erstellen
images = []

#Dokumentenelemente durchlaufen
while nodes.qsize() > 0:
    node = nodes.get()
    for i in range(node.ChildObjects.Count):
        #Untergeordnetes Objekt des Dokumentenelements abrufen
        child = node.ChildObjects.get_Item(i)
        #Prüfen, ob es ein Bild ist
        if child.DocumentObjectType == DocumentObjectType.Picture:
            picture = child if isinstance(child, DocPicture) else None
            dataBytes = picture.ImageBytes
            #Zur Liste hinzufügen
            images.append(dataBytes)
        #Prüfen, ob es ein zusammengesetztes Objekt ist
        elif isinstance(child, ICompositeObject):
            #Zur Warteschlange hinzufügen
            nodes.put(child if isinstance(child, ICompositeObject) else None)

#Bilder speichern
for i, item in enumerate(images):
    fileName = "Bild-{}.png".format(i)
    with open(outputPath+fileName,'wb') as imageFile:
        imageFile.write(item)

document.Close()
登录后复制
进入全屏模式 退出全屏模式

Extrahierte Bilder

用Python从Word文档中提取文本和图片

Der extrahierte Text wird mit angehängten Bewertungsinformationen gespeichert. Sie können die Bewertungsinformationen direkt am Anfang des Textes löschen. Die extrahierten Bilder sind nicht mit einem Wasserzeichen versehen.

这是关于使用 Spire.Doc for Python 从 Word 文档中提取文本和图像的介绍。 Spire.Doc for Python 支持许多其他文档操作。查看官方网站或加入 Spire.Doc 论坛。

以上就是用Python从Word文档中提取文本和图片的详细内容,更多请关注php中文网其它相关文章!

相关标签:
WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号