code: def _download_and_unpack_zip(url, local_path, skip_if_not_empty):
      os.makedirs(local_path, exist_ok=True)
      files_in_dir = os.listdir(local_path)
      files_in_dir = [
          file for file in files_in_dir if file[0] != "."
      ]  # Remove hidden files
  
      if skip_if_not_empty and len(files_in_dir) > 0:
          local_paths = {
              filename: os.path.join(local_path, filename)
              for filename in files_in_dir
          }
          return local_paths
  
      request = requests.get(url)
      zip_file = ZipFile(BytesIO(request.content))
      files = zip_file.namelist()
  
      local_paths = {}
      for filename in files:
          contents = zip_file.read(filename)
          write_path = os.path.join(local_path, filename)
          with open(write_path, "wb+") as local_file:
              local_file.write(contents)
          local_paths[filename] = write_path
      return local_paths
  
imports: from io import BytesIO
  import os
  import requests
  from zipfile import ZipFile
  import numpy
  import scipy.sparse
  from sklearn.base import TransformerMixin
  from sklearn.feature_extraction.text import CountVectorizer
  from sklearn.pipeline import Pipeline, FeatureUnion
  from sklearn.preprocessing import LabelBinarizer
  from lightfm import datasets
label_desc: Use image node_id 1 for calling a global function with example usage: _download_and_unpack_zip(url, local_path, skip_if_not_empty) and returns: local_paths, local_paths