python根据excel列的文件名,批量去复制文件

 可以使用 Python 的 osshutil 模块来实现这个需求。

具体的思路如下:

  1. 遍历 Excel 表的每一行,获取该行对应的 PDF 文件名(假设在 pdf_filename 列)。

  2. 根据该文件名和 PDF 文件所在的文件夹路径('C:\\Users\\win10\\Documents\\pdf'),构造出完整的 PDF 文件路径。

  3. 使用 shutil 模块中的 copy() 函数,将 PDF 文件复制到桌面上的一个新建文件夹中。你可以使用 os.path.join() 函数来构造目标路径,例如 os.path.join(desktop_path, pdf_filename),其中 desktop_path 为桌面路径

import os
import shutil
import pandas as pd
from pathlib import Path

# 获取桌面路径
desktop_path = Path.home() / 'Desktop'

# 读取 Excel 表格,获取需要拷贝的 PDF 文件名
df = pd.read_excel(r'C:\Users\win10\Desktop\新建 XLSX 工作表.xlsx')
pdf_filenames = df['pdf_filename'].tolist()

    # 拷贝 PDF 文件
for pdf_filename in pdf_filenames:
    # 构造 PDF 文件完整路径
    pdf_path = os.path.join('C:\\Users\\win10\\Documents\\pdf', pdf_filename) 
        # 判断文件是否存在,如果不存在则跳过当前循环
    if not os.path.isfile(pdf_path):
        print(f'{pdf_filename} 不存在')
        continue

    # 构造目标路径
    target_path = os.path.join(str(desktop_path), 'pdf_files')
    
    # 如果目标文件夹不存在,则创建它
    if not os.path.isdir(target_path):
        os.mkdir(target_path)
    
    # 拷贝 PDF 文件
    shutil.copy(pdf_path, target_path)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值