in src/utils/utils.py [0:0]
def unzip(zip_archive):
log.debug(f'Prep to unzip {zip_archive.filename}')
list_files = []
for file in zip_archive.infolist():
# Skip Directories and DICOMDIR file
if not file.is_dir() and (file.filename.upper().find('DICOMDIR') == -1):
# Check if DICOM header is present
f = zip_archive.open(file)
# f.read(128)
# magic = f.read(4)
# if magic != b'DICM':
# log.info(f'Ignore File in ZipFile, Not Valid DCM file "{file.filename}"')
if check_dcm(f):
# Add File to list
list_files.append(zip_archive.open(file))
log.debug(f'Added "{file.filename}" to process queue')
else:
log.info(
f'Ignore File in ZipFile, Not Valid DCM file "{file.filename}"')
f.close()
else:
log.info(f'Ignore File in ZipFile, "{file.filename}"')
return list_files