南漪学长 2021-08-23 22:14 采纳率: 50%
浏览 74
已结题

谁能帮我写个脚本,把多个文件夹里面照片,按照每个文件夹,生成对应的Word文档,然后每个Word文件每页两个照片,第一行输入文件夹的名字不

老哥们 谁能帮我写个脚本不

  1. 把多个文件夹里面照片,按照每个文件夹,生成对应的Word文档保存到新路径,并且名字和之前文件夹名字一样

2.每个Word文件每页插入两个照片,第一行输入文件夹的名字

img
效果如图
img

  • 写回答

1条回答 默认 最新

  • CSDN专家-HGJ 2021-08-24 02:47
    关注

    对一个文件夹内的图片添加,可以用如下代码实现。多个文件夹用循环遍历文件夹即可。

    import docx,os
    from docx.shared import Inches,Pt
    
    doc=docx.Document()
    path = r'F:\2021\texture'
    para=doc.add_paragraph()
    run = para.add_run('texture')
    run.font.size = Pt(18)
    run.bold = True
    for i,p in enumerate(os.listdir(path)):    
        doc.add_picture(os.path.join(path,p), height=Inches(3),width=Inches(4))
        doc.add_paragraph('\n') 
        if i % 2 == 1 and i < len(os.listdir(path))-1:
            doc.add_page_break()
    doc.save('texture.docx')
    

    对于多文件夹:

    import docx,os
    from docx.shared import Inches,Pt
    tpath = "F:/2021/qa/ot1/texture"
    for dir in os.listdir(tpath):
        path = os.path.join(tpath,dir)
        if os.path.isdir(path):
            doc=docx.Document()    
            para=doc.add_paragraph()
            run = para.add_run(dir)
            run.font.size = Pt(18)
            run.bold = True
            for i,p in enumerate(os.listdir(path)):    
                doc.add_picture(os.path.join(path,p), height=Inches(3),width=Inches(4))
                doc.add_paragraph('\n') 
                if i % 2 == 1 and i < len(os.listdir(path))-1:
                    doc.add_page_break()
            doc.save(f'{tpath+"/"+dir}.docx')
        else:
            pass
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月1日
  • 已采纳回答 8月24日
  • 修改了问题 8月23日
  • 创建了问题 8月23日

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型