读取根目录下所有文件对应图片插入word 实现按路径取名
import os from docx import Document from docx.shared import Inches # 定义你想要遍历的文件夹路径 folder_path = 'C:/Users/Administrator/Desktop/东3' # 遍历文件夹中的所有子文件夹 for subdir, dirs, files in os.walk(folder_path): # 检查当前遍历的目录名是否为根目录 if subdir == folder_path: continue # 如果是根目录,则跳过创建文档 # 检查当前子文件夹是否是最后一级子目录 if len(dirs) == 0: #最后一级文件夹名称 # print( os.path.basename(subdir)) first_level_dir_name = os.path.basename(os.path.dirname(subdir)) last_level_dir_name = os.path.basename(subdir) # 在每个子文件夹中创建一个新的docx文档 if last_level_dir_name == '2023-09-05': doc = Document() # 创建文档 print(first_level_dir_name) # 在文档中添加一个三列若干行的表格 table = doc.add_table(rows=len(files), cols=3) # 获取当前目录下的所有.png文件的路径 png_files = [os.path.join(subdir, f) for f in files if f.endswith('.png')] # 将图片按照顺序插入到表格中 for i, png_file in enumerate(png_files): # 计算图片应该插入的单元格位置 row = i // 3 col = i % 3 # 在特定的单元格中添加图片 cell = table.cell(row, col) paragraph = cell.add_paragraph() run = paragraph.add_run() run.add_picture(png_file, width=Inches(1.25), height=Inches(1.25)) #保存文档 doc.save(os.path.join(subdir, first_level_dir_name + '.docx')) else: doc = Document() print(last_level_dir_name) # 创建文档 # 在文档中添加一个三列若干行的表格 table = doc.add_table(rows=len(files), cols=3) # 获取当前目录下的所有.png文件的路径 png_files = [os.path.join(subdir, f) for f in files if f.endswith('.png')] # 将图片按照顺序插入到表格中 for i, png_file in enumerate(png_files): # 计算图片应该插入的单元格位置 row = i // 3 col = i % 3 # 在特定的单元格中添加图片 cell = table.cell(row, col) paragraph = cell.add_paragraph() run = paragraph.add_run() run.add_picture(png_file, width=Inches(1.25), height=Inches(1.25)) # 保存文档到子文件夹中,使用当前子文件夹的名称作为文档名称 doc.save(os.path.join(subdir, last_level_dir_name + '.docx'))