diff --git a/car-talk-downloader.py b/car-talk-downloader.py index 4a99ea6..7084065 100644 --- a/car-talk-downloader.py +++ b/car-talk-downloader.py @@ -206,6 +206,7 @@ def download_episode( return episode, "dry-run" url = unescape_audio_url(episode.audio_url) + err_msg = "" for attempt in range(retries + 1): if attempt: delay = min(10.0, (2**attempt)) + random.random() @@ -244,11 +245,12 @@ def download_episode( size_kb = final_path.stat().st_size / 1024.0 logger.info("Saved %s (%.1f KB) in %.2fs", final_path, size_kb, elapsed) return episode, "ok" - except (urllib.error.URLError, TimeoutError, OSError): + except (urllib.error.URLError, TimeoutError, OSError) as exc: temp_path.unlink(missing_ok=True) + err_msg = str(exc) continue - logger.error("Failed after retries: %s", filename) + logger.error("Failed after retries: %s: %s", filename, err_msg) return episode, "fail"