当前位置: 首页 > 网络应用技术

多少列Python-docx

时间:2023-03-07 15:51:44 网络应用技术

  简介:今天,首席CTO Note将与您分享多少列Python-Docx。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!

  有一天,我收到了一个需要:我希望使用Python处理一些Word文档,例如更改一些文本和添加评论。

  经过简单的搜索,我发现Python-Docx是一个常用的Python库来处理DOCX文档,因此我计划将其用于进一步开发。

  官方文件提供了一个简单的例子

  Python-docx将文档作为文档对象,段落对象和运行对象提取,提供了围绕这些对象进行简单处理的API

  但是,文档中没有注释操作的一部分。在搜索了一些文章之后,我发现我在某个问题中提到了评论的添加,但是我仍然没有得到特定的解决方案。

  DOCX文档的底层由XML文件组成

  我们可以将xx.docx文件的后缀名称更改为.rar,然后手动解压缩。您可以获取以下文件

  在许多文件中,主要是文档。xml文件,文档的内容保留在此处

  打开document.xml文件,旁边的标题,页脚,表格和其他特殊项目,删除修改项目,例如样式,一个简单的DOCX文档可以分为三个部分:段落,运行,文本,文本

  段落是我们在word.text中看到的一节。文本是真实的内容。run更抽象,我们可以将其理解为片段,即陈述的划分。

  为了更好地理解运行是什么,请打开一个Word文档以找到其中一个单词

  让我们看一下减压后文档的相应部分

  好的,我们可以看到原始的完整句子被分为Word中的许多w:r标签。这是运行的规则。如果句子中有不同的单词风格,它将分开分开,因此我们很难估计是否将句子分为几个片段。

  搜索问题中的评论关键字,并发现已在合并请求中给出了添加注释的解决方案。

  但这仍然无法满足我的需求。我的目标是将其准确地添加到单词或短语中

  打开此贡献者的源代码

  实际上,在p标签中插入注释标签引用,并同时将注释标签添加到XX文件中

  以同样的方式,我们可以在R标签中插入注释标签参考,并同时将注释标签添加到XX文件中,以实现需要将注释添加到特定单词

  本文将总结使用Python-docx软件包处理Word文档时的一些理解和经验。

  安装

  介绍

  python -docx将整个文章视为文档对象的正式文档,基本结构如下:

  在Python-Docx中,运行是最基本的单元。每个运行对象中的文本样式都是一致的,也就是说,在从DOCX文件中生成文档对象时,Python-Docx将使用该样式更改基于运行对象的文本。

  您也可以使用它来处理官方文档 - 表,基本结构如下:

  1.单词表样式的设置

  从docx导入 *

  document = document()

  table = document.add_table(3,3,样式=“中栅格1 Accent 1”)

  heading_cells = table.Rows [0] .cells

  heading_cells [0] .text ='第一列内容'

  heading_cells [1] .text ='第二个内容'

  heading_cells [2] .text ='第三列内容'

  document.save(r“ d:demo.docx”))

  2.获取所有单词表样式

  来自docx.enum.Style导入wd_style_type

  从docx导入 *

  document = document()

  样式= Document.Styles

  #生成所有桌子样式

  对于样式:

  如果s.type == wd_style_type.table:

  document.add_paragraph(“表样式:”+ s.name)

  table = document.add_table(3,3,style = s)

  heading_cells = table.Rows [0] .cells

  heading_cells [0] .text ='第一列内容'

  heading_cells [1] .text ='第二个内容'

  heading_cells [2] .text ='第三列内容'

  document.add_paragraph(“

  ”)

  首先通过PIP安装Python-docx,然后命令安装Python-docx。

  Python-docx使用文档对象表示整个DOCX文档。它包含段落对象的列表。每个段落对应于DOCX文档的段落。

  除Word文档中的字符串外,它还包含样式信息,例如字体,大小和颜色。相同样式的连续字符串将存储在运行对象中。

  假设DOCX文档具有以下内容:

  然后,在Python-DoCX分析后,将生成3个运行对象:

  导入DOCX

  doc = docx.document()

  整数0的标题是标题样式,用于文档的顶部。对于整数1到45是不同的标题,它是主要标题,45是最小字幕。

  doc.add_heading('标题0',0)

  doc.add_heading('标题1',1)

  doc.add_heading('标题2',2)

  doc.add_heading('标题3',3)

  doc.add_heading('标题4',4)

  doc.add_heading('标题5',5)

  doc.save('example 3.docx')

  1#添加内容

  段落= doc_.add_paragraph()

  run_ =段落.add_run(“ python博客”)

  2#获取字体对象

  font_ = run_.font

  3#设置行

  font_.undline = true

  4#设置粗体

  font_.bold = true

  5#设置字体颜色

  font_.color.rgb = rgbColor(0xff,0x00,0x00)

  6#设置字体大小

  font_.size = pt(20)

  7#获取段落格式

  段_format = paragraph.paragraph_format

  8#设置第一行的结尾

  段落_format.first_line_indent =英寸(0.2)

  9#设置前距离,单位是磅

  段落_format.space_after = pt(10)

  10#设置后距离,设备为磅

  段落_format.space_before = pt(5)

  11#添加表

  table_ = doc_.add_table(行= 2,cols = 2,style =“中栅格1 accent 1”)

  12#填写第一行和第一列内容

  table_.cell(0,0).text =“

  13#填写第一行和第二列内容

  table_.cell(0,1).text =“”“”“”

  14#填写第二行的第一列

  table_.cell(1,0).text =“描述”

  15#填写第二行和第二列内容

  table_.cell(1,1).text =“”“”“”

  16#添加图片,宽度属性设置大小

  doc_.add_picture(r“/usr/load/download/test.png”,width = inch(4.25))

  17#保存文档

  doc_.save('python-word内容格式.docx')

  结论:以上是首席CTO注释引入的Python-Docx的所有内容。我希望这对每个人都会有所帮助。如果您想了解更多有关此信息的信息,请记住收集并关注此网站。