Python - python处理word(python-docx)

简介: Python - python处理word(python-docx)

一、安装第三方模块


python-docx 是用于创建可修改 微软 Word 的一个 python 库,提供全套的 Word 操作,是最常用的 Word 工具

首先要下载名为"docx"的模块,然后import该模块

安装方法 :1.第一种方法:按win+r----> 输入cmd—>输入以下命令即可

pip install python-docx

2.第二种方法:打开pycharm,点击File,再点击settings,点击settings之后再点击project下面的project Interpreter,在界面中点击+号,直接搜索python-docx模块,直接安装即可。


二、基本概念


Document:是一个 Word 文档 对象,不同于 VBA 中 Worksheet 的概念,Document 是独立的,打开不同的 Word 文档,就会有不同的 Document 对象,相互之间没有影响

Paragraph:是段落,一个 Word 文档由多个段落组成,当在文档中输入一个回车键,就会成为新的段落,输入 shift + 回车,不会分段

Run 表示一个节段,每个段落由多个 节段 组成,一个段落中具有相同样式的连续文本,组成一个节段,所以一个 段落 对象有个 Run 列表


三、操作word


1、基本操作

打开、保存

from docx import Document
document = Document()
document.save('文件名称.docx')

添加段落

document.add_paragraph('段落内容')

添加图片

document.add_picture('图片名称.jpg')

设置图片大小

from docx.shared import Cm
#设置图片的跨度为 10 厘米
document.add_picture('图片名称.png', width=Cm(10))

在上一个段落前添加段落

prior_paragraph = paragraph.insert_paragraph_before('段落内容')

添加换页

#文档最后插入分页
document.add_page_break()
#特定段落分页
from docx.enum.text import WD_BREAK
paragraph = document.add_paragraph("独占一页")  # 添加一个段落
paragraph.runs[-1].add_break(WD_BREAK.PAGE)  # 在段落的最后一个节段后添加分页

2、样式

段落样式包括:对齐、列表样式、行间距、缩进、背景色等,可以在添加段落时设定,也可以在添加之后设置:

 #添加一个段落,设置为无序列表样式
document.add_paragraph('无序列表段落', style='List Bullet')
#添加段落后,通过 style 属性设置样式
paragraph = document.add_paragraph('无序列表段落')
paragraph.style = 'List Bullet'

文字样式

paragraph = document.add_paragraph('添加一个段落')
#设置 节段文字为加粗
run = paragraph.add_run('粗体')
run.bold = True
#设置 节段文字为斜体
run = paragraph.add_run('斜体')
相关文章
|
6月前
|
XML 关系型数据库 MySQL
python将word(doc或docx)的内容导入mysql数据库
用python先把doc文件转换成docx文件(这一步也可以不要后续会说明),然后读取docx的文件并另存为htm格式的文件(上一步可以直接把doc文件另存为htm),python根据bs4获取p标签里的内容,如果段落中有图片则保存图片。(图片在word文档中的位置可以很好的还原到生成的数据库内容) 我见网上有把docx压缩后解压获取图片的,然后根据在根据xml来读取图片的位置,我觉得比较繁琐。用docx模块读取段落的时候还需要是不是判断段落中有分页等,然而转成htm之后就不用判断那么多直接判断段落里的样式或者图片等就可以了。
114 1
|
1月前
|
人工智能 开发者 Python
python读取word文档 | AI应用开发
在RAG系统中,构建知识库时需读取多种外部文档,其中Word文档较为常见。本文介绍如何使用`python-docx`库读取Word文档(.docx格式)中的标题、段落、表格和图片等内容。首先通过`pip install python-docx`安装库,然后利用提供的接口提取所需信息。尽管该库功能强大,但在识别标题样式时需自定义逻辑,并且仅提供图片的URI而非直接加载。示例代码展示了读取文本、识别标题、读取表格及获取图片URI的方法。【10月更文挑战第2天】
80 2
|
6月前
|
Python
办公自动化-Python如何提取Word标题并保存到Excel中?
办公自动化-Python如何提取Word标题并保存到Excel中?
85 2
|
1月前
|
IDE 开发工具 Python
Python自动化操作word--批量替换word文档中的文字
Python自动化操作word--批量替换word文档中的文字
|
3月前
|
Linux Python Windows
Python PDF文件转Word格式,只需要3秒(附打包)
Python PDF文件转Word格式,只需要3秒(附打包)
90 3
Python PDF文件转Word格式,只需要3秒(附打包)
|
3月前
|
XML 存储 数据格式
使用Python的zipfile模块巧解Word批量生成问题
通过以上步骤,我们得到了填充了特定数据的 Word 文档。这个过程可以通过循环对多个数据集重复执行,从而实现批量生成多个 Word 文档的目标。
39 5
|
3月前
|
Python
Python——将PPT和Word转为PDF文件
Python——将PPT和Word转为PDF文件
73 1
|
4月前
|
开发者 Python
确保你的Python环境中已经安装了`python-docx`模块。如果还没有安装,可以通过pip来安装:
确保你的Python环境中已经安装了`python-docx`模块。如果还没有安装,可以通过pip来安装:
|
6月前
|
算法 Python
学会Python自动制作Word,将看到一个5天4位数的赚钱机会
学会Python自动制作Word,将看到一个5天4位数的赚钱机会
|
6月前
|
BI 开发者 数据格式
Python代码填充数据到word模板中
【4月更文挑战第16天】
154 0
下一篇
无影云桌面