diff --git a/Lib/test/test_urllib.py b/Lib/test/test_urllib.py index 3fcf9a3f0c2..7d35f10b123 100644 --- a/Lib/test/test_urllib.py +++ b/Lib/test/test_urllib.py @@ -135,7 +135,9 @@ def test_getproxies_environment_keep_no_proxies(self): proxies = urllib.request.getproxies_environment() # getproxies_environment use lowered case truncated (no '_proxy') keys self.assertEqual('localhost', proxies['no']) - + # List of no_proxies with space. + self.env.set('NO_PROXY', 'localhost, anotherdomain.com, newdomain.com') + self.assertTrue(urllib.request.proxy_bypass_environment('anotherdomain.com')) class urlopen_HttpTests(unittest.TestCase): """Test urlopen() opening a fake http connection.""" diff --git a/Lib/urllib/request.py b/Lib/urllib/request.py index d1acae1b568..4a571e8b9f6 100644 --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py @@ -2274,7 +2274,8 @@ def proxy_bypass_environment(host): # strip port off host hostonly, port = splitport(host) # check if the host ends with any of the DNS suffixes - for name in no_proxy.split(','): + no_proxy_list = [proxy.strip() for proxy in no_proxy.split(',')] + for name in no_proxy_list: if name and (hostonly.endswith(name) or host.endswith(name)): return 1 # otherwise, don't bypass