Source code for Acquire.Access._checksum


__all__ = ["get_filesize_and_checksum", "get_size_and_checksum"]


[docs]def get_size_and_checksum(data): """Return a tuple of the size in bytes of the passed data and the data's md5 checksum """ from hashlib import md5 as _md5 md5 = _md5() md5.update(data) return (len(data), str(md5.hexdigest()))
[docs]def get_filesize_and_checksum(filename): """Return a tuple of the size in bytes of the passed file and the file's md5 checksum """ from hashlib import md5 as _md5 md5 = _md5() size = 0 with open(filename, "rb") as f: for chunk in iter(lambda: f.read(4096), b""): md5.update(chunk) size += len(chunk) return (size, str(md5.hexdigest()))