python调用word接口主要用到的模板为python-docx,基本操作官方文档有说明。

使用python新建一个word文档,操作就像文档里介绍的那样:

1 from docx import Document

2 from docx.shared import Inches

3

4 document = Document()

5

6 document.add_heading('Document Title', 0) #插入标题

7

8 p = document.add_paragraph('A plain paragraph having some ') #插入段落

9 p.add_run('bold').bold = True

10 p.add_run(' and some ')

11 p.add_run('italic.').italic = True

12

13 document.add_heading('Heading, level 1', level=1)

14 document.add_paragraph('Intense quote', style='IntenseQuote')

15

16 document.add_paragraph(

17 'first item in unordered list', style='ListBullet'

18 )

19 document.add_paragraph(

20 'first item in ordered list', style='ListNumber'

21 )

22

23 document.add_picture('monty-truth.png', width=Inches(1.25)) #插入图片

24

25 table = document.add_table(rows=1, cols=3) #插入表格

26 hdr_cells = table.rows[0].cells

27 hdr_cells[0].text = 'Qty'

28 hdr_cells[1].text = 'Id'

29 hdr_cells[2].text = 'Desc'

30 for item in recordset:

31 row_cells = table.add_row().cells

32 row_cells[0].text = str(item.qty)

33 row_cells[1].text = str(item.id)

34 row_cells[2].text = item.desc

35

36 document.add_page_break()

37

38 document.save('demo.docx') #保存文档

读取和编辑一个已有的word文档,只需在一开始添加上文件路径就行了,如下:

1 from docx import Document

2 from docx.shared import Inches

3

4 document = Document('demo.docx') #打开文件demo.docx

5 for paragraph in document.paragraphs:

6 print(paragraph.text) #打印各段落内容文本

7

8 document.add_paragraph(

9 'Add new paragraph', style='ListNumber'

10 ) #添加新段落

11

12 document.save('demo.docx') #保存文档

如果是想读取其中的图片或是更复杂地编辑,首先我们需要先来认识下docx文档的格式组成:

docx是Microsoft Office2007之后版本使用的,用新的基于XML的压缩文件格式取代了其目前专有的默认文件格式,在传统的文件名扩展名后面添加了字母“x”(即“.docx”取代“.doc”、“.xlsx”取代“.xls”、“.pptx”取代“.ppt”)。

docx格式的文件本质上是一个ZIP文件。将一个docx文件的后缀改为ZIP后是可以用解压工具打开或是解压的。事实上,Word2007的基本文件就是ZIP格式的,他可以算作是docx文件的容器。

docx 格式文件的主要内容是保存为XML格式的,但文件并非直接保存于磁盘。它是保存在一个ZIP文件中,然后取扩展名为docx。将.docx 格式的文件后缀改为ZIP后解压, 可以看到解压出来的文件夹中有word这样一个文件夹,它包含了Word文档的大部分内容。而其中的document.xml文件则包含了文档的主要文本内容。

word目录下:

document.xml文件内容:

media目录下存放word文档中插入的图片:

所以,我们可以使用手工的方法编辑文件document.xml来对该word文档内容进行编辑,或是提取文档media中图片文件的方式来提取该word文档中所插入的所有图片。

1 import zipfile

2

3 f=zipfile.ZipFile('demo.docx','r')

4

5 for filename in f.namelist():

6 f.extract(filename)

用python编辑word_使用PYTHON编辑和读取WORD文档相关推荐

  1. python识别颜色1007python识别颜色_python读取word文档识别字段颜色,解析字段

    python版本3.7.3,读取的文档格式为.docx 文中带有简单注释 看不懂的百度网盘下载直接查看,更改运行里面的py文件 提取码:nngw import os import sys import ...

  2. python怎么读取word文件_使用python编辑和读取word文档

    python调用word接口主要用到的模板为python-docx,基本操作官方文档有说明. 使用python新建一个word文档,操作就像文档里介绍的那样: 1 from docx importDo ...

  3. python怎么读取word文件_python之python-docx编辑和读取word文档

    python调用word接口主要用到的模板为python-docx,基本操作官方文档有说明. 使用python新建一个word文档,操作就像文档里介绍的那样:1 from docx import Do ...

  4. docx文档怎么排列图片_“胶水语言”办公自动化Word篇——使用Python编辑和读取Word文档

    python调用word接口主要用到的模板为python-docx,基本操作官方文档有说明. 使用python新建一个word文档,操作就像文档里介绍的那样: from docx import Doc ...

  5. python之python-docx编辑和读取word文档

    python调用word接口主要用到的模板为python-docx,基本操作官方文档有说明. python-docx官方文档地址 使用python新建一个word文档,操作就像文档里介绍的那样: 1 ...

  6. python生成word文档的表格_2018-10-04 [日常]用Python读取word文档中的表格并比较

    演示如下. 两个简单的word文档, 各有一个表格: 读取文档中的表格到列表(为演示只对单列表格操作): import docx def 取表格(文件名): 文件 = docx.Document(文件 ...

  7. python批量提取word指定内容_使用python批量读取word文档并整理关键信息到excel表格的实例...

    目标 最近实验室里成立了一个计算机兴趣小组 倡议大家多把自己解决问题的经验记录并分享 就像在CSDN写博客一样 虽然刚刚起步 但考虑到后面此类经验记录的资料会越来越多 所以一开始就要做好模板设计(如下 ...

  8. 用python将word文档导入数据库_python读取word文档,插入mysql数据库的示例代码

    表格内容如下: 1.实现批量导入word文档,取文档标题中的数字作为编号 2.除取上面打钩的内容需要匹配出来入库入库,其他内容全部直接入库mysql # wuyanfeng # -*- coding: ...

  9. Python读取word文档(python-docx包)

    最近想统计word文档中的一些信息,人工统计的话...三天三夜吧 python 不愧是万能语言,发现有一个包叫做 docx,非常好用,具体查看官方文档:https://python-docx.read ...

最新文章

  1. Win10 + VS2017 15.5.6 环境下解决 Python 3.6 环境无法刷新DB的问题
  2. ORACLE EBS财务科目FLEX FIELD的添加
  3. 访问服务器 request.getheader(origin)为null_服务器磁盘不足,1分钟快速搞定!
  4. python跳回循环开始位置_如何回到python中循环的开始?
  5. Datagridview绘制
  6. CSS 中的定位:relative,absolute
  7. 哥哥被我打哭了的飞鸽传书
  8. Servlet实现文件上传
  9. MySQL—设置数据库(库、表等)不区分大小写
  10. asp.net mvc 包含了一个 html 的助手类在哪里,c# - 在App_Code中使用@HTML的ASP.NET MVC Razor Helper - 堆栈内存溢出...
  11. 公众号精选评论点赞_12月评论:前10名和编辑精选
  12. 嵌入式Linux系统编程学习之十一Linux进程的创建与控制
  13. 4个常用的计算机应用软件,信息技术应用--常用计算机工具软件4常用工具软件单元四.pdf...
  14. 基于php的学校固定资产管理系统
  15. 安装Hitool JRE环境
  16. 虚拟环境中用Anaconda安装显卡CUDA驱动与CUDA运行版本匹配
  17. Keil C51 Code Banking
  18. Fully Convolutional Networks for Semantic Segmentation 个人总结
  19. 联想E431 win10+Unbutun+Deepin系统安装
  20. 三子棋小游戏(经过轻微改编可变为五子棋)

热门文章

  1. java 怎样展示二维画矩阵图_如何用java绘制矩阵的图
  2. [bzoj3140] [Hnoi2013]消毒
  3. 文件处理命令,目录处理命令,链接命令
  4. 什么是哲学为基础的设计模式?
  5. php slug,PHP函数使slug(URL字符串)
  6. mysql 表上线_腾讯云上线数据库 MySQL 8.0 版
  7. mysql 瓶颈诊断_MySQL 监控、性能瓶颈排查
  8. linux内核驱动ldd3_走进linux 驱动开发 之 内核模块
  9. Spire.Doc for Java的jar包、maven库-全套free资源
  10. 如何搭建python框架_从0到1告诉你搭建完整Python+requests接口自动化测试框架!