最近在利用模板批量生产文件打印的时候遇到了一个问题,生成的文件太多,没有办法批量打印。
截图04.jpg
想到利用Python能否可以合并多个word,方便打印。搜索发现,word对单纯文字的合并支持的很好(如果你不考虑样式的话)。而我需要操作的是word里面的table,这种情况没有很好的办法适应。
截图05.jpg
pip install python-docx
pip install pandas
import docx
import pandas as pd
file = docx.Document(wordname)
tb = file.tables
rows = tb[0].rows
cols1 = rows[1].cells
cell1 = cols1[0]
print(cell1.text) #才会得到想要的数据 weekone 所在单元格的内容
利用循环把数据存入数组,制造一个新的word模板,把数据进行替换,只想到了一个很笨的方法来解决这个问题了。
带来的结果是,原先需要打开12个word文件,每个word文件打印两张的操作,变成只打开1个word文件,打印两张,最起码后续的工作量减少了一些。