# Module `src.utils.safezip`

Expand source code

    # safe unzip https://stackoverflow.com/a/36583849
    def safe_unzip(zip_file, extractpath='.'):
        with zipfile.ZipFile(zip_file, 'r') as zf:
            for member in zf.infolist():
                abspath = os.path.abspath(os.path.join(extractpath, member.filename))
                if abspath.startswith(os.path.abspath(extractpath)):
                    zf.extract(member, extractpath)

## Functions

`def safe_unzip(zip_file, extractpath='.')`
  Expand source code

      def safe_unzip(zip_file, extractpath='.'):
          with zipfile.ZipFile(zip_file, 'r') as zf:
              for member in zf.infolist():
                  abspath = os.path.abspath(os.path.join(extractpath, member.filename))
                  if abspath.startswith(os.path.abspath(extractpath)):
                      zf.extract(member, extractpath)