Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import hashlib
- def get_dir_files(dirname):
- files = []
- for name in os.listdir(dirname):
- name = os.path.join(dirname, name)
- if os.path.isdir(name):
- subfiles = get_dir_files(name)
- files.extend(subfiles)
- elif os.path.isfile(name):
- files.append(name)
- return files
- def get_md5_dict_from_files(files):
- md5dict = {}
- for file in files:
- md5dict[file] = hashlib.md5(open(file,'rb').read()).hexdigest()
- return md5dict
- if __name__ == "__main__":
- currdir = os.getcwd()
- files = get_dir_files(currdir)
- md5dict = get_md5_dict_from_files(files)
- newpath = os.path.join(currdir, "Copias")
- for name1, md51 in md5dict.items():
- for name2, md52 in md5dict.items():
- if (name1 == name2):
- continue
- if (md51 == md52):
- oldname = name2
- md5dict[oldname] = ""
- oldpath, filename = os.path.split(oldname)
- newname = os.path.join(newpath, filename)
- if os.path.exists(oldname):
- os.rename(oldname, newname)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement