import os import requests import zipfile from tqdm import tqdm def download_file(url, filename): response = requests.get(url, stream=True) total_size = int(response.headers.get('content-length', 0)) block_size = 1024 t = tqdm(total=total_size, unit='iB', unit_scale=True) with open(filename, 'wb') as f: for data in response.iter_content(block_size): t.update(len(data)) f.write(data) t.close() if total_size != 0 and t.n != total_size: print("ERROR, something went wrong") def main(): url = "https://github.com/akanametov/cyclegan/releases/download/1.0/horse2zebra.zip" dest_path = "data/horse2zebra.zip" os.makedirs("data", exist_ok=True) print(f"Downloading {url}...") try: download_file(url, dest_path) print("Extracting...") with zipfile.ZipFile(dest_path, 'r') as zip_ref: zip_ref.extractall("data") os.remove(dest_path) print("Done!") except Exception as e: print(f"Failed: {e}") if __name__ == "__main__": main()