20220325备份用代码

21 篇文章 0 订阅
# 一、导入相关模块,设定excel所在文件夹和生成word保存的文件夹
from docxtpl import DocxTemplate
import pandas as pd
import os
zpath=os.getcwd()+'\\'
zpath=r'D:\test\身份证py'+'\\'

file_path=zpath+r'\大8班的名片'

# 二、遍历excel,逐个生成word(form.docx是前面的模板)
try:
    os.mkdir(file_path)
except:
    pass

tpl = DocxTemplate(zpath+'IDmoban.docx')
IDcard = pd.read_excel(zpath+'IDcard.xlsx')
nu=IDcard["nu"]
name = IDcard["name"]
sex =IDcard["sex"]  # str.rstrip()用于去掉换行符
nation = IDcard["nation"]
year = IDcard["year"]
month = IDcard["month"]
day = IDcard["day"]
address = IDcard["address"]
idnum = IDcard["idnum"]
issuingauthority = IDcard["issuingauthority"]
effecivedate = IDcard["effecivedate"]



# math = autho['math']
# eng = autho['eng']

# 遍历excel行,逐个生成
num = IDcard.shape[0]
for i in range(num):
    context = {
       "nu": nu[i],
       "name": name[i],
       "sex": sex[i],
       "nation": nation[i],       
       "year": year[i],
       "month": month[i],
       "day": day[i],
       "address": address[i],
       "idnum": idnum[i],
       "issuingauthority": issuingauthority[i],
       "effecivedate": effecivedate[i],
       
    #    "eng": eng[i]
    
    }
    tpl = DocxTemplate(zpath+'IDmoban.docx')
    tpl.render(context)
    tpl.save(file_path+r"\{} 的身份证.docx".format(name[i]))

# 三、把word所在文件夹打包压缩,便于发送。
import zipfile
# 设定压缩后的压缩包地址和名称
zipName = zpath + '大8班的身份证.zip'
z = zipfile.ZipFile(zipName,'w',zipfile.ZIP_DEFLATED)
for dirpath,dirnames,filenames in os.walk(file_path):
    for filename in filenames:
        print(filename)
        z.write(os.path.join(dirpath, filename),filename)
z.close()
# 要记得close

# 附解压:
#将打包的文件解压
f = zipfile.ZipFile(zipName, 'r')
for file in f.namelist():
    f.extract(file, path)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿夏reasonsummer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值