From: Antonio Ospite Date: Sun, 6 May 2012 08:15:22 +0000 (+0200) Subject: winfreed.py: handle urllib2.urlopen failures better X-Git-Url: https://git.ao2.it/winfreed.git/commitdiff_plain/107faf9a94302652a411c3dab5ac6d6a2f7f4f29?ds=inline winfreed.py: handle urllib2.urlopen failures better Also make clear the difference between src_url and url and why we use url = response.geturl() to get the latter. --- diff --git a/winfreed.py b/winfreed.py index 1192f47..a59d78e 100755 --- a/winfreed.py +++ b/winfreed.py @@ -63,8 +63,17 @@ def show(pkg): print -def download_file(url, dest_dir): - response = urllib2.urlopen(url) +def download_file(src_url, dest_dir): + try: + response = urllib2.urlopen(src_url) + except Exception, e: + if hasattr(e, 'reason'): + print 'Download failed. Reason: ', e.reason + elif hasattr(e, 'code'): + print 'Download failed. Error code: ', e.code + return + + # get the final URL after possible redirect have been followed url = response.geturl() filename = ""