首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >提取具有与内容关联的样式的word文档

提取具有与内容关联的样式的word文档
EN

Stack Overflow用户
提问于 2019-01-09 17:24:57
回答 1查看 460关注 0票数 0

我正在尝试提取word文档的格式,其中包含不同字体和字体的文本-大小、图像、注释等。我已经使用zipfile模块来提取word文档的XML文件。

XML文件包括:

代码语言:javascript
复制
['[Content_Types].xml',
 '_rels/.rels',
 'word/_rels/document.xml.rels',
 'word/document.xml',
 'word/footer2.xml',
 'word/header1.xml',
 'word/footer1.xml',
 'word/endnotes.xml',
 'word/footnotes.xml',
 'word/_rels/header1.xml.rels',
 'word/header2.xml',
 'word/_rels/header2.xml.rels',
 'word/embeddings/Microsoft_Word_97_-_2003_Document1.doc',
 'word/media/image3.wmf',
 'word/media/image2.emf',
 'word/theme/theme1.xml',
 'word/media/image1.png',
 'word/embeddings/oleObject1.bin',
 'word/comments.xml',
 'word/settings.xml',
 'word/styles.xml',
 'customXml/itemProps1.xml',
 'word/numbering.xml',
 'customXml/_rels/item1.xml.rels',
 'customXml/item1.xml',
 'docProps/app.xml',
 'word/stylesWithEffects.xml',
 'word/webSettings.xml',
 'word/fontTable.xml',
 'docProps/core.xml',
 'docProps/custom.xml']

我无法理解与word/document.xml中的内容相关联的样式。

我尝试用以下方式封装结果:

代码语言:javascript
复制
{
    "text": "some-text-in-document",
    "font": "some-font",
    "font_size": 10,
    "some_field": "some-more-value",
    ...
}

我尝试使用python-docx获取字体和字号,但大多数情况下值为None

下面是代码片段:

代码语言:javascript
复制
from docx.enum.style import WD_STYLE_TYPE
styles = document.styles
#print(styles.default)
paragraph_styles = [s for s in styles if s.type == WD_STYLE_TYPE.PARAGRAPH]
for style in paragraph_styles:
    #print(style.font.name)
    if(style.font.name):
        print(style.font.name, style.font.size)

for paragraph in document.paragraphs:
    #print(paragraph.text)
    for run in paragraph.runs:
        print(run.text)
        font = run.style.font
        print(font.size)

结果大多是字体和字号的None

EN

回答 1

Stack Overflow用户

发布于 2019-01-11 07:33:34

styleNone值表示Normal

所有段落都有一种样式,只是大多数段落都有相同的样式,所以Word不会针对大多数情况进行拼写,这可能是为了节省空间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54106777

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档