def main(): index1 = Index().index_root('/media/joncrall/store/Recordings') index2 = Index().index_root('/media/joncrall/backup/Recordings') index3 = Index().index_root('/media/joncrall/media/Recordings') paths1 = list(index1.files.keys()) paths2 = list(index2.files.keys()) paths3 = list(index3.files.keys()) hashes1 = [ut.get_file_hash(p, stride=1024 * 100) for p in paths1] hashes1 = [ut.get_file_hash(p, stride=1024 * 100) for p in paths1]
def test_file_hash(): resdir = utool.get_app_resource_dir('utool') test_fpath = join(resdir, 'lorium_ipsum.txt') if not utool.checkpath(test_fpath, verbose=True, n=100): utool.write_to(test_fpath, lorium_text) hash_ = utool.get_file_hash(test_fpath) target_hash_ = b'\xd1Y\xe5\xa2\xc1\xd8\xb8\nS\xb1?\x16\xfe\xc5\x88\xbd\x9e\xb4\xe3\xda' print(repr(hash_)) print(repr(target_hash_)) assert hash_ == target_hash_
def _md5_stride(self, fpaths): import hashlib return (ut.get_file_hash(fpath, hasher=hashlib.md5(), stride=1024) for fpath in fpaths)
def _md5(self, fpaths): import hashlib return (ut.get_file_hash(fpath, hasher=hashlib.md5()) for fpath in fpaths)
def tryhash(fpath_, stride=1): try: return ut.get_file_hash(fpath_, stride=stride) except IOError: return None
def hashid(self): stride = 16 return ut.get_file_hash(self.abspath, stride=stride)