批量生成不同合同(模块docx)


一、合同模板

二、合同清单

三、代码

 1 from docx import Document
 2 import xlrd
 3 
 4 def change_text(old_text, new_text):
 5     all_paragraphs = document.paragraphs # 选取段落
 6     for paragraph in all_paragraphs: # 对于段落的替换
 7         for run in paragraph.runs: # 选取段落中的块
 8             run_text = run.text.replace(old_text, new_text) # 替换
 9             run.text = run_text
10 
11     all_tables = document.tables
12     for table in all_tables: # 对于表格的替换
13         for row in table.rows:
14             for cell in row.cells:
15                 cell_text = cell.text.replace(old_text, new_text)
16                 cell.text = cell_text
17 
18 xlsx = xlrd.open_workbook(r"D:\python\合同清单.xlsx")
19 sheet = xlsx.sheet_by_index(0)
20 
21 for table_row in range(1, sheet.nrows):
22     document = Document(r"D:\python\模板.docx")
23     for table_col in range(0, sheet.ncols):
24         change_text(str(sheet.cell_value(0, table_col)), str(sheet.cell_value(table_row, table_col)))
25 
26     document.save("%s合同.docx" % str(sheet.cell_value(table_row, 0)))
27     print("%s合同完成" % str(sheet.cell_value(table_row, 0)))

 

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM