def download_with_retry()

in export.py [0:0]


def download_with_retry(url, num_retries=5):
	for num_retry in range(num_retries):
		try:
			time.sleep(num_retry**2) # exponential backoff
			response = urlopen(url)
		except HTTPError, e:
			logging.error(str.format("download of {} failed on {}th retry with HTTP Error: {}", url, num_retry, e.code))
		except URLError, e:
			logging.error(str.format("download of {} failed on {}th retry with URL Error: {}", url, num_retry, e.reason))
		else:
			return response.read()