Python zipfile.ZIP_LZMA Examples

The following are 4 code examples of zipfile.ZIP_LZMA(). You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may also want to check out all available functions/classes of the module zipfile , or try the search function .
Example #1
Source File: resources.py    From omnitool with MIT License 5 votes vote down vote up
def __init__(self, ressourcefile, format = zipfile.ZIP_LZMA):
        self.zip = zipfile.ZipFile(ressourcefile, "r", format) 
Example #2
Source File: output.py    From slither with GNU Affero General Public License v3.0 5 votes vote down vote up
def output_to_zip(filename: str, error: Optional[str], results: Dict, zip_type: str = "lzma"):
    """
    Output the results to a zip
    The file in the zip is named slither_results.json
    Note: the json file will not have indentation, as a result the resulting json file will be smaller
    :param zip_type:
    :param filename:
    :param error:
    :param results:
    :return:
    """
    json_result = {
        "success": error is None,
        "error": error,
        "results": results
    }
    if os.path.isfile(filename):
        logger.info(yellow(f'{filename} exists already, the overwrite is prevented'))
    else:
        with ZipFile(filename, "w", compression=ZIP_TYPES_ACCEPTED.get(zip_type, zipfile.ZIP_LZMA)) as file_desc:
            file_desc.writestr("slither_results.json", json.dumps(json_result).encode('utf8'))


# endregion
###################################################################################
###################################################################################
# region Json generation
###################################################################################
################################################################################### 
Example #3
Source File: export.py    From slither with GNU Affero General Public License v3.0 5 votes vote down vote up
def save_to_zip(files: List[Export], zip_filename: str, zip_type: str = "lzma"):
    """
    Save projects to a zip
    """
    logger.info(f"Export {zip_filename}")
    with zipfile.ZipFile(
        zip_filename, "w", compression=ZIP_TYPES_ACCEPTED.get(zip_type, zipfile.ZIP_LZMA)
    ) as file_desc:
        for f in files:
            file_desc.writestr(str(f.filename), f.content) 
Example #4
Source File: util.py    From ShapeWorld with MIT License 4 votes vote down vote up
def __init__(self, path, mode, archive=None):
        assert mode == 'r' or mode == 'w'
        assert archive in (None, 'zip', 'zip:none', 'zip:deflate', 'zip:bzip2', 'zip:lzma', 'tar', 'tar:none', 'tar:gzip', 'tar:bzip2', 'tar:lzma')
        self.archive = path
        self.mode = mode
        if not os.path.isdir(self.archive[:self.archive.rindex('/')]):
            os.mkdir(self.archive[:self.archive.rindex('/')])
        try:
            if not os.path.isdir('/tmp/shapeworld'):
                os.makedirs('/tmp/shapeworld')
            self.temp_directory = os.path.join('/tmp/shapeworld', 'temp-' + str(time.time()))
            os.mkdir(self.temp_directory)
        except PermissionError:
            self.temp_directory = os.path.join(self.archive[:self.archive.rindex('/')], 'temp-' + str(time.time()))
            os.mkdir(self.temp_directory)
        if archive is None:
            self.archive_type = None
            if not os.path.isdir(self.archive):
                os.mkdir(self.archive)
        elif archive[:3] == 'zip':
            self.archive_type = 'zip'
            if len(archive) == 3:
                compression = zipfile.ZIP_DEFLATED
            elif archive[4:] == 'none':
                compression = zipfile.ZIP_STORED
            elif archive[4:] == 'deflate':
                compression = zipfile.ZIP_DEFLATED
            elif archive[4:] == 'bzip2':
                compression = zipfile.ZIP_BZIP2
            elif archive[4:] == 'lzma':
                compression = zipfile.ZIP_LZMA
            if not self.archive.endswith('.zip'):
                self.archive += '.zip'
            self.archive = zipfile.ZipFile(self.archive, mode, compression)
        elif archive[:3] == 'tar':
            self.archive_type = 'tar'
            if len(archive) == 3:
                mode += ':gz'
                extension = '.gz'
            elif archive[4:] == 'none':
                extension = ''
            elif archive[4:] == 'gzip':
                mode += ':gz'
                extension = '.gz'
            elif archive[4:] == 'bzip2':
                mode += ':bz2'
                extension = '.bz2'
            elif archive[4:] == 'lzma':
                mode += ':xz'
                extension = '.lzma'
            if not self.archive.endswith('.tar' + extension):
                self.archive += '.tar' + extension
            self.archive = tarfile.open(self.archive, mode)