]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Support manual proxy configuration for simple urlopen() operations.
authorFred Drake <fdrake@acm.org>
Thu, 4 Apr 2002 20:41:34 +0000 (20:41 +0000)
committerFred Drake <fdrake@acm.org>
Thu, 4 Apr 2002 20:41:34 +0000 (20:41 +0000)
This change is similar to the supplied patch, but does not save the opener
when a proxy configuration is specified.
This closes SF patch #523415.

Lib/urllib.py

index d028d7a591b3b4c63a62c3e0019a7bd53bbd81ce..2d53c125885205b93e8dbe693a9b1d685a27d4b2 100644 (file)
@@ -63,15 +63,20 @@ else:
 
 # Shortcut for basic usage
 _urlopener = None
-def urlopen(url, data=None):
+def urlopen(url, data=None, proxies=None):
     """urlopen(url [, data]) -> open file-like object"""
     global _urlopener
-    if not _urlopener:
-        _urlopener = FancyURLopener()
+    if proxies is not None:
+        opener = FancyURLopener(proxies=proxies)
+    elif not _urlopener:
+        opener = FancyURLopener()
+        _urlopener = opener
+    else:
+        opener = _urlopener
     if data is None:
-        return _urlopener.open(url)
+        return opener.open(url)
     else:
-        return _urlopener.open(url, data)
+        return opener.open(url, data)
 def urlretrieve(url, filename=None, reporthook=None, data=None):
     global _urlopener
     if not _urlopener: