winfreed.py: differentiate between pkg_url and actual url
authorAntonio Ospite <ospite@studenti.unina.it>
Wed, 30 Nov 2011 10:57:00 +0000 (11:57 +0100)
committerAntonio Ospite <ospite@studenti.unina.it>
Wed, 30 Nov 2011 11:04:09 +0000 (12:04 +0100)
The actual URL of the file can be the result of HTTP redirects done when
requesting 'pkg_url'.

winfreed.py

index 068480b..94524e1 100755 (executable)
@@ -66,12 +66,13 @@ def show(pkg):
 def download(pkg):
     # the "%s" in URLs are meant to be replaced with LANGCODE
     try:
-        url = pkg['URL'] % LANGCODE
+        pkg_url = pkg['URL'] % LANGCODE
     except:
-        url = pkg['URL']
+        pkg_url = pkg['URL']
         pass
 
-    response = urllib2.urlopen(url)
+    response = urllib2.urlopen(pkg_url)
+    url = response.geturl()
 
     filename = ""
     if 'Content-Disposition' in  response.info():
@@ -84,7 +85,7 @@ def download(pkg):
         filename = urllib2.unquote(os.path.basename(response.geturl()))
 
     if filename == "":
-        sys.stderr.write("Debug (%s): filename: %s url: %s\n" % (pkg['package_name'], filename, response.geturl()))
+        sys.stderr.write("Debug (%s): filename: %s url: %s\n" % (pkg['package_name'], filename, url))
         return
 
     destfile = os.path.join(OUTPUT_DIR, filename)