文書内の単語のバッチ番号を交換する必要性が求められています
例えば、133から183 31から81のボリュームに必要なボリュームの交換単語を置き換えるために、スクリプトは次の
from docx import Document
import os
oldFile = "C:\\Users\\wuzs\\Desktop\\test.docx"
newFile = "C:\\Users\\wuzs\\Desktop\\test2.docx"
DICT = {
"SP_OS_NETWORK_133":"SP_OS_NETWORK_031",
"SP_OS_NETWORK_134":"SP_OS_NETWORK_032",
"SP_OS_NETWORK_135":"SP_OS_NETWORK_033",
"SP_OS_NETWORK_136":"SP_OS_NETWORK_034",
*****************
*****************
"SP_OS_NETWORK_182":"SP_OS_NETWORK_080",
"SP_OS_NETWORK_183":"SP_OS_NETWORK_081",
}
def main():
document = Document(oldFile)
document = check(document)
document.save(newFile)
def check(document):
# tables
for table in document.tables:
for row in range(len(table.rows)):
for col in range(len(table.columns)):
for key, value in DICT.items():
if key in table.cell(row, col).text:
print(key + "->" + value)
table.cell(row, col).text = table.cell(row, col).text.replace(key, value)
# paragraphs
for para in document.paragraphs:
for i in range(len(para.runs)):
for key, value in DICT.items():
if key in para.runs[i].text:
print(key + "->" + value)
para.runs[i].text = para.runs[i].text.replace(key, value)
return document
if __name__ == '__main__':
main()