import os
import shutil
import zipfile
from datetime import datetime
def extract_all_zips(source_folder, temp_extract_folder):
for root, dirs, files in os.walk(source_folder):
for file in files:
if file.endswith('.zip'):
zip_path = os.path.join(root, file)
extract_zip(zip_path, temp_extract_folder)
def extract_zip(zip_file, extract_to):
with zipfile.ZipFile(zip_file, 'r') as zip_ref:
zip_ref.extractall(extract_to)
def find_and_copy_files(source_folder, destination_folder, file_name_patterns, user_input_date):
file_names_to_find = [pattern.replace('YYYYMMDD', user_input_date) for pattern in file_name_patterns]
temp_extract_folder = '/path/to/temp_extract'
extract_all_zips(source_folder, temp_extract_folder)
extracted_files = []
for root, dirs, files in os.walk(temp_extract_folder):
for file in files:
for pattern in file_names_to_find:
if pattern.lower() in file.lower():
source_path = os.path.join(root, file)
destination_path = os.path.join(destination_folder, file)
shutil.copy2(source_path, destination_path)
print(f"File '{file}' matched pattern '{pattern}'")
extracted_files.append(file)
print("Extracted files:")
print(extracted_files)
shutil.rmtree(temp_extract_folder) # Remove the temporary extract folder
print('提取完成!')
# 用法示例:
source_folder_A = r'C:\Users\LF\Desktop\test'
destination_folder = r'C:\Users\LF\Desktop\result'
file_name_patterns = ['yyyymmdd组合持仓表.txt', 'yyyymmdd_优惠组合持仓明细表.txt']
# 获取用户输入的日期
user_input_date = input("请输入日期,格式为YYYYMMDD:")
find_and_copy_files(source_folder_A, destination_folder, file_name_patterns, user_input_date)
为什么此段代码执行result文件夹里没有文件呢?