python自动生成word文档,python读取word文档中的格式
Word、excel、PPT虽然是特殊文件,但其实也是我们在实际工作中经常用到的文件类型。本文将详细解释Python如何读取Word文件以及文件的内容。有兴趣的可以看看。
00-1010前言python-docx python-docx使用python批量读取文档,python-docx安装python-docx,文档的段落内容读取python-docx,Python-docx的表格内容读取
目录
在前面的章节中,我们学习了常用文件的操作,如文件创建、复制粘贴、剪切粘贴、文件名重命名、删除等。另外还学了一些基础的练习,比如怎么找文件,怎么根据内容找文件等等。
在本章和后续中,我们将开始学习一些特殊文件的自动化相关操作。如word、excel、PPT,虽然是特殊文件,但也是我们在实际工作中经常用到的文件类型。
接下来我们就进入word文档自动操作的学习内容。
本章涉及的新模块
python-docx
pdfkit
pydocx
前言
利用 python 批量读取文件
Python-docx是一个Python库,用于创建可修改的Microsoft Word。它提供了一套完整的Word操作,是最常用的Word工具。
使用前,先了解几个概念:
文档:是一个Word文档对象,与VBA的工作表概念不同。文档独立。打开不同的Word文档,会有不同的文档对象,互不影响。段落:Word文档由多个段落组成。当您在文档中输入回车键时,它将成为一个新段落。输入shift和Enter,它不会逐段表示。每个段落由多个段组成,一个段落中具有相同样式的连续文本形成一个段,所以一个段落对象有一个运行列表。例如,下面的一个word文档的示意图:
Word文档结构划分如下:
word利器之python-docx
安装:
如果pip python-docx安装速度太慢,可以改国内源地址(如下)
pip install-I https://pypi.tuna.tsinghua.edu.cn/simple python-docx
导入:
导入docx
从docx导入…
python-docx 安装
导入包和模块:
从docx导入文档
用法:
文档(word文件地址)
返回值:
Word文件对象
python-docx 之 Document
实际上,如果你想阅读一个word文档,你主要需要阅读它的段落和表格。不管是段落还是表格,它的内部都是一个字符串,我们的目的就是读取这些字符串的内容。
我们来看看段落内容是怎么读的:
来源:
文档_对象;paragraphs通过document对象的paragraphs函数返回段落列表;如果一个word文件中有多个段落,就会有多个段落对象。
用法:
通过循环获取每个段落对象并调用text。
演示脚本如下:
#编码:utf-8
导入操作系统
从docx导入文档
Path=os.path.join (os.getcwd(), test _ file/text.docx )
打印(“\”文本的路径。docx\ 是:,路径)#调试路径
doc=文档(路径)
对于文件第3360段中的p
打印(第6页)
运行结果如下:(PS:文中只是演示,本人不是培训机构的!)
python-docx 之段落内容读取
接下来,我们来看看如何读取word文件中的表格内容:
来源:
文档_对象;tables通过document对象的paragraphs函数返回表格列表;里面是一个接一个的表格对象。
用法:
类似地,行和列的内容通过循环获得。
返回值:
每个表格字段(字符串)
示范案例代码如下:
#编码:utf-8
导入操作系统
从docx导入文档
Path=os.path.join (os.getcwd(), test _ file/text.docx )
打印(“\”文本的路径。docx\ 是:,路径)#调试路径
doc=文档(路径)
#文件第3360段中的p
#打印(第一页)
For t in doc.tables: # for循环获取表对象
对于t.rows: #中的行,获取每一行
row_str=[]
对于row.cells: #中的单元格,在每行中获取一个单独的小表格,然后拼接其内容;拼接后,在第二个for循环中打印出来。
row_str.append(cell.text)
打印(row_str)
#还可以通过 columns 获取表中各列的内容。你可以自己试试。
运行结果如下:
这篇关于Python在自动化办公中读取Word文件的文章到此为止。关于Python阅读Word内容的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。