从365个文件中选择某些文件并复制

本文介绍了一种使用Python脚本检测数据库批量导入过程中未成功导入文件的方法。通过对已导入数据和待导入文件进行对比,筛选出缺失的文件,并将其复制到指定目录,以便后续处理。该方法适用于全年数据(365个文件)的导入异常检测。

往数据库中批量的导入全年的数据(365个文件),发现再导入的过程中某几个的文件没有导进去,现在通过程序从全部文件中(365个)找到那些没有导入的天数。


import time
import shutil, os
import pandas


def export(filename,filename1,filename2):
    file = [str(i)[:10] for i in pandas.read_excel(filename)['日期'].tolist()]
    print(file)
    for Folder_file in sorted([a for a, b, c in os.walk(filename1, topdown=True)][1:],key=lambda x:int(x.split('\\')[-1][:-1])):
        excel_files = sorted(os.listdir(Folder_file), key=lambda x: int(x[-7:-5]))
        excel_files = [Folder_file + '\\' + i for i in excel_files]
        print(excel_files)

        for excel_file in excel_files:
            print(filename2 + '\\'+excel_file[-15:-5]+'.xlsx')

            if excel_file[-15:-5] not in file:
                shutil.copy(excel_file, filename2 + '\\'+excel_file[-15:-5]+'.xlsx')






if __name__ == '__main__':
    first = time.time()
    filename = r'E:\1.xls'
    filename1 = r'Z:\附件2:共享数据\投件快递员_明细'
    filename2 = r'E:\快递员需要重新导入的数据'
    export(filename,filename1,filename2)

    last = time.time()

    print('这件事共用时 %f h' % round((last - first) / 3600, 2))






 

然后 筛选成功~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值