首页 > 解决方案 > 使用 python docx 模块编辑 MS word 文件并将其保存回来时更改某些字符编码

问题描述

我正在阅读一个word文件(word文件只是有一个巨大的表格),在表格的每一行之后插入一个空白行并将其保存回来。保存后,新文件更改了一些字符。我猜编码的变化正在发生。

这是我的阅读和保存代码。

def insert_row_in_table(table):
    empty_row = get_empty_row(table) # this function will return an empty row
    for row in table.rows:
        tr = row._tr
        tr.addnext(copy.deepcopy(empty_row))


def convert(file: str):
    doc = docx.Document(file)
    row_c = 0
    for table in doc.tables:
        insert_row_in_table(table)

    # save file
    file_name = os.path.splitext(file)
    new_name = file_name[0] + '_updated' + file_name[1]
    doc.save(new_name)

这是我比较两个文件时的外观(左侧:原始文件,右侧:更新文件) 在此处输入图像描述

如何保留字符编码或避免此问题?

标签: python-3.xpython-docx

解决方案


推荐阅读