Fix for the Issue918368 - urllib doesn't correct server returned urls

This commit is contained in:
Senthil Kumaran 2009-04-21 03:24:19 +00:00
parent a7e734fcee
commit 7c2867fcb1
2 changed files with 16 additions and 0 deletions

View file

@ -176,6 +176,9 @@ class URLopener:
def open(self, fullurl, data=None):
"""Use URLopener().open(file) instead of open(file, 'r')."""
fullurl = unwrap(toBytes(fullurl))
# percent encode url, fixing lame server errors for e.g, like space
# within url paths.
fullurl = quote(fullurl, safe="%/:=&?~#+!$,;'@()*[]")
if self.tempcache and fullurl in self.tempcache:
filename, headers = self.tempcache[fullurl]
fp = open(filename, 'rb')