We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 70d8244 commit 640c56eCopy full SHA for 640c56e
1 file changed
extract_utils/extract.py
@@ -424,11 +424,20 @@ def extract_tar(source: str, dump_dir: str):
424
tar.extractall(dump_dir)
425
426
427
+def extract_7z(source: str, dump_dir: str):
428
+ import py7zr
429
+
430
+ with py7zr.SevenZipFile(source, 'r') as archive:
431
+ archive.extractall(dump_dir)
432
433
434
def extract_image_file(source: str, dump_dir: str):
435
if is_zipfile(source):
436
extract_fn = extract_zip
437
elif is_tarfile(source):
438
extract_fn = extract_tar
439
+ elif source.endswith('.7z'):
440
+ extract_fn = extract_7z
441
else:
442
raise ValueError(f'Unexpected file type at {source}')
443
0 commit comments