docs: def get(data_label=None, destination_dir="."):
      """
      Download sample data by data label. Labels can be listed by sample_data.data_urls.keys()
      :param data_label: label of data. If it is set to None, all data are downloaded
      :param destination_dir: output dir for data
      :return:
      """
      try:
          os.mkdir(destination_dir)
      except:
          pass
      if data_label is None:
          data_label=data_urls.keys()
  
      if type(data_label) == str:
          data_label = [data_label]
  
      for label in data_label:
          # make all data:url have length 3
          data_url = data_urls[label]
          if type(data_url) == str:
              # back compatibility
              data_url = [data_url]
          data_url.extend([None, None])
          data_url = data_url[:3]
          url, expected_hash, hash_path = data_url
  
          if hash_path is None:
              hash_path = label
  
          try:
              computed_hash = checksum(os.path.join(destination_dir, hash_path))
          except:
              # there is probably no checksumdir module
              logger.warning("problem with sample_data.checksum()")
              computed_hash = None
  
          logger.info("dataset '" + label + "'")
          logger.info("expected hash: '" + str(expected_hash) + "'")
          logger.info("computed hash: '" + str(computed_hash) + "'")
          if (computed_hash is not None) and (expected_hash == computed_hash):
              logger.info("match ok - no download needed")
          else:
              logger.info("downloading")
              downzip(url, destination=destination_dir)
              logger.info("finished")
              downloaded_hash = checksum(os.path.join(destination_dir, hash_path))
              logger.info("downloaded hash: '" + str(downloaded_hash) + "'")
              if downloaded_hash != expected_hash:
                  logger.warning("downloaded hash is different from expected hash\n" + \
                      "expected hash: '" + str(expected_hash) + "'\n" + \
                      "downloaded hash: '" + str(downloaded_hash) + "'\n")