我正在读取一个 * docx * 文件,文件名为python-docx
,我正在对段落文本进行一些更改,因此,每次更改文本时,我都会丢失一些单词的颜色:
下面是我的代码:
def get_paragraphs(self, doc, paragraphs = []):
for p in doc.paragraphs:
if p.text:
if p.text[0] == r'{':
continue
if p.text.isspace():
continue
p.text = p.text.replace("Before", "After")
paragraphs.append(p.text)
for table in doc.tables:
for row in table.rows:
for cell in row.cells:
self.get_paragraphs(cell, paragraphs)
if not doc._parent:
return paragraphs
我想我可以在文本中添加一个标签,比如"\<red\>Red\<red\>"
,然后以段落样式传递它,但是我不知道该怎么做?
1条答案
按热度按时间s8vozzvw1#
使用paragraph对象的“runs”列表,我可以检查每个属性,比如颜色,文本是粗体还是斜体,然后创建一个“html标签”,在那里我可以使用BeatifullSoup获得这些参数: