扶贫工作-结对帮扶公示牌 自动化填写

import os
import pandas as pd
import re
from docx import Document
from docx.shared import Pt #设置字号帮扶责任人公式卡填写
from docx.shared import Cm #设置图片大小
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT#对齐
from docx.oxml.ns import qn#修改中文字体

path='C:/Users/lenovo/Desktop/帮扶责任人公式卡填写/帮扶责任人照片'
dirs=os.listdir(path)

df=pd.read_excel(r'C:\Users\lenovo\Desktop\帮扶责任人公式卡填写\帮扶责任人公式卡填写.xls',header=0,index_col='序号',converters={'家庭人口':str})

for i in range(len(df)):
    wfile=Document(r'C:\Users\lenovo\Desktop\帮扶责任人公式卡填写\结对帮扶责任人.docx')
    hostname=df.loc[i+1,'户主姓名']
    num=df.loc[i+1,'家庭人口']
    char=df.loc[i+1,'户属性']
    helpername=df.loc[i+1,'姓名']
    job=df.loc[i+1,'单位及职务']
    contact=df.loc[i+1,'手机号码']
    #WORD文件填写
    tab1=wfile.tables[0]
    run1=tab1.cell(0,2).paragraphs[0].add_run(f'{hostname}')
    run1.font.size=Pt(20)#设置字号
    run1.font.name='黑体'
    run1._element.rPr.rFonts.set(qn('w:eastAsia'),'黑体')
    
    run2=tab1.cell(1,2).paragraphs[0].add_run(f'{num}')
    run2.font.size=Pt(20)#设置字号
    run2.font.name='黑体'
    run2._element.rPr.rFonts.set(qn('w:eastAsia'),'黑体')
    
    run3=tab1.cell(2,2).paragraphs[0].add_run(f'{char}')
    run3.font.size=Pt(20)#设置字号
    run3.font.name='黑体'
    run3._element.rPr.rFonts.set(qn('w:eastAsia'),'黑体')
    
    run4=tab1.cell(0,5).paragraphs[0].add_run(f'{helpername}')
    run4.font.size=Pt(20)#设置字号
    run4.font.name='黑体'
    run4._element.rPr.rFonts.set(qn('w:eastAsia'),'黑体')
    
    run5=tab1.cell(1,5).paragraphs[0].add_run(f'{job}')
    run5.font.size=Pt(20)#设置字号
    run5.font.name='黑体'
    run5._element.rPr.rFonts.set(qn('w:eastAsia'),'黑体')
    
    run6=tab1.cell(2,5).paragraphs[0].add_run(f'{contact}')
    run6.font.size=Pt(20)#设置字号
    run6.font.name='黑体'
    run6._element.rPr.rFonts.set(qn('w:eastAsia'),'黑体')
    
    run7=tab1.cell(0,6).paragraphs[4].add_run()
    for sub_dirs in dirs:
        sub_dirs_path=os.path.join(path,sub_dirs)
        sub_dirs=os.listdir(sub_dirs_path)
        for file in sub_dirs:
            pic_dir_path=os.path.join(sub_dirs_path,file)
            pic_file=os.listdir(pic_dir_path)#获取了所有的照片名
            for pic in pic_file:
                if re.match(helpername,pic)!=None:
                    pic_path=os.path.join(pic_dir_path,pic)#获取照片的路径
                    run7.add_picture(pic_path,width=Cm(3.6),height=Cm(4.8))
                    tab1.cell(0,6).paragraphs[4].alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
                else:
                    pass
    
    
    
wfile.save(f'C:/Users/lenovo/Desktop/帮扶责任人公式卡填写/{hostname}.docx')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值