以下是一个利用哈希值检查并提取两个文件夹内部所有重复文件的Python代码示例:

import os
import hashlib
import shutil

def get_file_hash(file_path):
    # 计算文件的哈希值
    with open(file_path, 'rb') as f:
        content = f.read()
        file_hash = hashlib.md5(content).hexdigest()
    return file_hash

def find_duplicate_files(folder1, folder2, output_folder):
    # 创建一个字典来保存文件哈希值和对应的文件路径
    file_dict = {}

    # 遍历第一个文件夹中的所有文件,并计算哈希值
    for root, dirs, files in os.walk(folder1):
        for file in files:
            file_path = os.path.join(root, file)
            file_hash = get_file_hash(file_path)
            if file_hash not in file_dict:
                file_dict[file_hash] = file_path

    # 遍历第二个文件夹中的所有文件,并检查哈希值是否存在于字典中
    # 如果存在,则将文件复制到输出文件夹中
    for root, dirs, files in os.walk(folder2):
        for file in files:
            file_path = os.path.join(root, file)
            file_hash = get_file_hash(file_path)
            if file_hash in file_dict:
                # 创建输出文件夹(如果不存在)
                if not os.path.exists(output_folder):
                    os.makedirs(output_folder)

                # 复制重复文件到输出文件夹中
                shutil.copy(file_path, output_folder)

if __name__ == '__main__':
    folder1 = 'path/to/folder1'  # 第一个文件夹路径
    folder2 = 'path/to/folder2'  # 第二个文件夹路径
    output_folder = 'path/to/output'  # 输出文件夹路径

    find_duplicate_files(folder1, folder2, output_folder)

请将 path/to/folder1path/to/folder2path/to/output 替换为实际的文件夹路径。这段代码将在输出文件夹中创建一个包含所有重复文件的副本

我需要一个利用哈希值检查并提取两个文件夹内部所有重复文件的python代码并将重复文件提取到单独的文件夹内

原文地址: https://www.cveoy.top/t/topic/hMxh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录