1、安装 pptx、openpyxl
    2、获取ppt模板中的占位符的序号
    将模板文件保存为 demo.pptx

    1. from pptx import Presentation
    2. prs = Presentation('demo.pptx')
    3. slide = prs.slides.add_slide(prs.slide_layouts[0])
    4. for ph in slide.placeholders:
    5. phf = ph.placeholder_format
    6. print(phf.idx)
    7. ph.text = str(phf.idx)
    8. prs.save('demo_no.pptx')

    可以看到有两个占位符:
    0 是第一个,对应的是名字
    1 是第二个,对应的是id
    3、打开demo_no.pptx编辑幻灯片母版
    img
    进入幻灯片母版视图:
    img
    删除多余母版:
    img
    回到普通视图模式,然后在第一个幻灯片上右键点击设置背景格式,全部应用
    img
    可以看到有两个框框:单击此处编辑标题
    img
    修改两个框框大小,并且拖到对应位置,最后保存
    img
    4、读取用户名字和id,excel文件名字为user_1.xlsx,内容:
    img
    将它们写入到demo_no.pptx文件中,批量生成幻灯片

    1. from openpyxl import load_workbook
    2. wb = load_workbook("user_1.xlsx")
    3. ws = wb.active
    4. data={}
    5. for row in range(1,258):
    6. name = ws['A' + str(row)].value
    7. id = ws['B' + str(row)].value
    8. data.setdefault(name,id)
    9. prs = Presentation('demo_no.pptx')
    10. slide_layout = prs.slide_layouts[0]
    11. for name in data:
    12. slide = prs.slides.add_slide(slide_layout)
    13. slide.placeholders[0].text = "{}".format(name)
    14. slide.placeholders[1].text = "({})".format(data[name])
    15. prs.save('all.pptx')