2021-09-10 python-docx api 学习

获取文档对象

from docx import Document

doc = Document('file_path')

获取章节信息

# 获取所有章节

sections = doc.sections

print(sections)  # <docx.section.Sections object at 0x000000000B2E1148>

# 查看章节数量

print(len(sections))

通过使用章节对象可以实现对章节中页面大小页眉页脚的设置,段落也遵守章节设置。

获取文档页边距等信息

sec_0 = sections[0]

sec_0.left_margin  # 左边距

sec_0.right_margin  # 右边距

sec_0.top_margin  # 上边距

sec_0.bottom_margin  # 下边距

sec_0.header_distance  # 页眉边距

sec_0.footer_diatance  # 页脚边距

sec_0.orientation  # 页面方向

sec_0.page_height  # 页面高度

sec_0.page_width  # 页面宽度

获取word文档所有的段落对象

# 获取文档所有的段落对象

paragraphs = doc.paragraphs

# paragraphs获取的是word文档中所有段落对象的列表list准确的说是word文档中正文部分的段落对象列表。

# 正文部分如表格、页面页脚等也包含paragraph对象。 而doc.paragraphs中并不含有这些段落对象。

获取段落对象中的文字信息

par0 = paragraphs[0]

# 文本字符串

par0_string = par0.test

获取文字格式信息

paragraph对象里还有run对象,run对象包含了对象的**文字信息**。与此同时,paragraph.text方法也是通过run对象的方法获取文字信息。

paragraph方法源码:

def text(self):

    text = ''

    for run in self.runs:

            text += run.text

        return text

 获取文字格式信息

par[0].run[0].font.name  # 字体名称

par[0].run[0].font.size  # 字体大小

par[0].run[0].font.bold  # 字体是否加粗

par[0].run[0].font.italic  # 字体是否斜体

par[0].run[0].font.color.rgb  # 字体颜色

par[0].run[0].font.highlight_color  # 字体高亮

par[0].run[0].font.underline  # 字体下划线

par[0].run[0].font.strike  # 删除线

par[0].run[0].font.double_strike  # 双删除线

par[0].run[0].font.subscript  # 下标

par[0].run[0].font.superscript  # 下标

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容