我在使用 python-docx 包保留从 .docx 文档中提取的文本的大写时遇到了一些问题。
我正在迭代 .docx 文档的段落,以便使用 python-docx 提取文本:
for paragraph in doc.paragraphs:
raw_text = paragraph.text
这非常简单。但是,当我开始将 .docx 源代码与其在变量 raw_text 中提取的文本进行比较时,我经常(但并非总是)发现前者的大写符号在后者中变成了小写,就像下面的情况一样:
(来源)ПОРЯ́ДОК, дка и дку, м. 1. ед。 Состояние благоустроенности, гармонии; правильное расположение, надлежащий вид чего-л.
(raw_text) Поря́док, дка и дку, м. 1. ед。 Состояние благоустроенности, гармонии; правильное расположение, надлежащий вид чего-л。 Порядок скучен вездѣ, и немножко труден.
我无法找出问题所在,如果有人能解释这种奇怪的效果,我将不胜感激。
我终于找到了问题的根源。一些看似大写的符号实际上全部采用大写格式。所以我的解决方案是通过 paragraph.run.font.all_caps.
检查每次运行的 python-docx 中的字体属性