XingangPan/DragGAN · error · IOError
Google Drive download quota exceeded -- please try again lat
Error message
Google Drive download quota exceeded -- please try again later
What it means
Raised by dnnlib.util.open_url when the response body is a small HTML page containing 'Google Drive - Quota exceeded'. Google Drive caps downloads per file per day; once the cap is hit, no retries help until the quota resets. It propagates as an IOError after retries are exhausted (each retry re-hits the quota page).
Source
Thrown at dnnlib/util.py:459
with requests.Session() as session:
if verbose:
print("Downloading %s ..." % url, end="", flush=True)
for attempts_left in reversed(range(num_attempts)):
try:
with session.get(url) as res:
res.raise_for_status()
if len(res.content) == 0:
raise IOError("No data received")
if len(res.content) < 8192:
content_str = res.content.decode("utf-8")
if "download_warning" in res.headers.get("Set-Cookie", ""):
links = [html.unescape(link) for link in content_str.split('"') if "export=download" in link]
if len(links) == 1:
url = requests.compat.urljoin(url, links[0])
raise IOError("Google Drive virus checker nag")
if "Google Drive - Quota exceeded" in content_str:
raise IOError("Google Drive download quota exceeded -- please try again later")
match = re.search(r'filename="([^"]*)"', res.headers.get("Content-Disposition", ""))
url_name = match[1] if match else url
url_data = res.content
if verbose:
print(" done")
break
except KeyboardInterrupt:
raise
except:
if not attempts_left:
if verbose:
print(" failed")
raise
if verbose:
print(".", end="", flush=True)
# Save to cache.View on GitHub (pinned to 336f120ce1)
Solutions
- Wait for the Google Drive quota to reset (usually within 24 hours) and retry
- Copy the file to your own Google Drive ('Make a copy' / 'Add shortcut') and download from that copy
- Download via a different mirror if the model author provides one (HuggingFace, direct HTTP)
- Upload the file to a personal host (S3/Dropbox) and pass that URL
- Download manually in a browser (which sometimes still works under account auth) and use the local file path
Example fix
# before
with dnnlib.open_url('https://drive.google.com/uc?id=FILEID') as f: ...
# after
# copy to your own Drive or mirror, then:
with dnnlib.open_url('https://my-mirror.example.com/model.pkl') as f: ... Defensive patterns
Strategy: fallback
Try / catch
try:
with dnnlib.open_url(url) as f: data = f.read()
except IOError as e:
if 'Quota exceeded' in str(e):
with open(local_fallback_path, 'rb') as f: data = f.read()
else:
raise Prevention
- Mirror weights you depend on to your own storage
- Retry after ~24h when Google Drive quota resets
- Copy shared Drive files to your own Drive before downloading
When it happens
Trigger: Calling open_url (or any tool that loads a pickle from URL, like legacy.load_network_pickle) on a Google Drive file that has exceeded its daily download quota — typically a popular pretrained model shared publicly.
Common situations: Using third-party StyleGAN2 weights shared via Google Drive links that went viral; the error persists for up to ~24h until quota reset; users on shared IPs (corporate NAT/VPN) hit the cap sooner.
Related errors
- Google Drive virus checker nag
- No data received
- Cannot infer type name from input
- cannot parse 2-vector {s}
- TensorFlow pickle version too low
AI-assisted analysis of XingangPan/DragGAN@336f120ce1 (2026-08-27).
Data as JSON: /api/errors/dc1b9c7a7547d117.
Report an issue: GitHub.