前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AI办公自动化:批量在多个Word文档中插入对应图片

AI办公自动化:批量在多个Word文档中插入对应图片

作者头像
AIGC部落
发布2024-06-24 19:50:17
1000
发布2024-06-24 19:50:17
举报
文章被收录于专栏:Dance with GenAIDance with GenAI

工作任务:文件夹中有多个word文档和word文档名称一致的图片,要把这些图片都插入到word文档中

在chatpgt中输入提示词:

你是一个Python编程专家,写一个Python脚本,具体步骤如下:

打开文件夹:F:\AI自媒体内容\AI视频教程下载\新建文件夹

读取里面的docx文档;

定位文件夹中和这个docx文档主文件名一样的png图片;

将这个png图片插入到docx文档的第2段落和第3段落之间;

图片大小设置为:高度为7.25厘米,宽度14.44为厘米;

删除这个png图片;

注意:每一步都要输出信息到屏幕

源代码:

from docx import Document

from docx.shared import Cm

import os

from PIL import Image

# 文件夹路径

folder_path = r'F:\AI自媒体内容\AI视频教程下载\新建文件夹'

# 遍历文件夹中的文件

for file_name in os.listdir(folder_path):

if file_name.endswith('.docx'):

docx_path = os.path.join(folder_path, file_name)

doc = Document(docx_path)

# 获取主文件名(不包括扩展名)

base_name = os.path.splitext(file_name)[0]

png_path = os.path.join(folder_path, f'{base_name}.png')

if not os.path.exists(png_path):

print(f'找不到匹配的 PNG 文件: {png_path},跳过此文档')

continue

# 输出当前操作

print(f'处理文档: {docx_path}')

print(f'匹配的 PNG 图片: {png_path}')

# 检查文档的段落数

if len(doc.paragraphs) < 2:

print(f'文档段落数少于2: {docx_path},跳过此文档')

continue

# 插入图片到第2段落和第3段落之间

run = doc.paragraphs[1].insert_paragraph_before().add_run()

# 插入图片并设置大小

run.add_picture(png_path, width=Cm(14.44), height=Cm(7.25))

# 保存修改后的文档

doc.save(docx_path)

print(f'图片已插入并调整大小,文档保存: {docx_path}')

# 删除 PNG 图片

try:

os.remove(png_path)

print(f'图片已删除: {png_path}')

except Exception as e:

print(f'删除图片失败: {png_path}, 错误: {e}')

print('完成所有文档的处理。')

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Dance with GenAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档