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

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

Python 导入 Spire.Doc

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

pip install Spire.Docpip 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

Copyfrom turtle import stfrom 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 ladendocument.LoadFromFile(inputFile)#Text aus Dokument abrufentext = document.GetText()#Text in Textdatei schreibenWriteAllText(outputFile, text)document.Close()

登录后复制进入全屏模式退出全屏模式

Extrahierter Text

用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

Copyimport queuefrom spire.doc import * from spire.doc.common import *import osoutputPath = "Bilder/"inputFile = "Beispiel.docx"if not os.path.exists(outputPath):    os.makedirs(outputPath)#Document-Objekt erstellendocument = Document()  #Word-Dokument ladendocument.LoadFromFile(inputFile)#Warteschlange erstellen und Dokumentenelemente hinzufügennodes = queue.Queue()nodes.put(document)#Liste erstellenimages = []#Dokumentenelemente durchlaufenwhile 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 speichernfor 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文档中提取文本和图片的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2226053.html

(0)
上一篇 2025年2月26日 11:31:20
下一篇 2025年2月18日 05:01:10

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何在Python中将矩阵转换为字典

    矩阵是通过排列行和列来形成一个数组来定义的。矩阵的值可以是字符或整数。有多种方法可以将矩阵转换为Python字典-字典推导、for循环、enumerate和zip()。 使用for循环和字典推导 该程序使用for循环,通过应用字典推导来迭代…

    2025年2月26日
    200
  • 使用Python列出目录中特定类型的所有文件

    Python 灵活的功能和强大的库使操作文件和目录变得轻而易举。 Python 帮助您生成、更新和检索文件和文件夹中的数据。一种典型的需求是特定类型的所有文件的目录列表。本教程将使用真实示例引导您完成整个过程,以展示 Python 对文件系…

    2025年2月26日
    200
  • 挑战你的技能的Python挑战

    如您所知,Python 是最常用的编程语言之一。 Python 编程语言易于学习且易于使用。如果您了解 Python 的基础知识,您可以开发一些简单的项目,例如 TIC TAC TOE 游戏,也可以参加简单的 Python 编码挑战。这些编…

    2025年2月26日
    200
  • 如何在Python中获取字典中的下一个键?

    字典是Python强大的数据类型。它由键值对组成。通过这种数据类型可以有效地完成搜索、追加等操作。虽然访问字典中的值很简单,但在某些情况下您可能需要在字典中查找下一个键。 Python 提供了多种方法来实现此目的,具体取决于您的具体要求。在…

    2025年2月26日
    200
  • Python脚本关闭计算机

    在当今快节奏的数字世界中,能够自动执行计算机任务可以极大地提高生产力和便利性。其中一项任务是关闭计算机,如果手动完成,这可能会非常耗时。值得庆幸的是,Python 为我们提供了一套强大的工具来与系统交互并自动执行此类任务。 在这篇博文中,我…

    2025年2月26日
    200
  • python语言中%表示什么意思

    python语言中%表示运算符,能进行字符串格式化、取模运算和格式化输出的意思。详细介绍:1、字符串格式化,%可以用于将变量的值插入到字符串中;2、取模运算,%可以用于求两个数的余数;3、格式化输出,%可以用于格式化输出字符串。 本教程操作…

    2025年2月26日
    100
  • python怎么排序

    python排序方法有冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序、基数排序等等。详细介绍:1、冒泡排序,通过比较相邻的元素并交换它们的位置来进行排序;2、选择排序,通过找到列表中最小的元素,并将其放在已排序部分的末尾来进行排序…

    2025年2月26日
    200
  • Python这门编程语言已经死了吗?

    在经过三十多年的发展后,Python已经成为世界上最广泛使用的编程语言之一。由于其简单的语法、适应性和无数的库,Python在许多行业中获得了关注,包括网络开发、数据研究和人工智能等。然而,一些分析师开始怀疑,随着新的编程语言的崛起,Pyt…

    2025年2月26日
    200
  • 如何在Python中创建一个常量?

    常量和变量用于在编程中存储数据值。变量通常指的是可以随时间变化的值。而常量是一种变量类型,其值在程序执行期间不能被改变。 在Python中只有六个内置常量可用,它们是False、True、None、Not Implemented、Ellip…

    2025年2月26日
    200
  • 如何使用Python获取给定字符串中的第N个单词?

    We can get the Nth Word in a Given String in Python using string splitting, regular expressions, split() method, etc. Ma…

    2025年2月26日
    200

发表回复

登录后才能评论