基于openpyxls(尽量不要使用xlwings),根据Excel和Word中的数据批量生成准考证。
学生名单、准考证模板、照片如下:
代码如下:
from openpyxl import load_workbook
from openpyxl.drawing.image import Image
import datetime
wb_template = load_workbook(r'D:\百度网盘同步空间\BaiduNetdiskWorkspace\03-批量生成准考证\3-准考证模板.xlsx')
wb_names = load_workbook(r'D:\百度网盘同步空间\BaiduNetdiskWorkspace\03-批量生成准考证\3-学生名单.xlsx')
sht_template = wb_template.active
sht_names = wb_names.active
for row in sht_names['A2:D7']:
sht_template['B2'] = row[0].value
sht_template['D2'] = row[1].value
sht_template['B3'] = row[2].value
sht_template['B4'] = row[3].value
img = Image('D:\\百度网盘同步空间\\BaiduNetdiskWorkspace\\03-批量生成准考证\\学生照片\\'+row[0].value + '.jpg')
img.width = 55
img.height = 65
sht_template.add_image(img,'E2')
time_str = datetime.datetime.now().strftime('%Y-%m-%d_%H-%M-%S')
wb_template.save(r'D:\百度网盘同步空间\BaiduNetdiskWorkspace\03-批量生成准考证\准考证_'+row[0].value + '_' + time_str +'.xlsx')
print('已经输出 '+row[0].value)
输出结果如下: