def should_bypass_proxies(url): """ Returns whether we should bypass proxies or not. """ # NOTE: requests allowed for ip/cidr entries in no_proxy env that we don't # support current as urllib only checks DNS suffix # If the system proxy settings indicate that this URL should be bypassed, # don't proxy. # The proxy_bypass function is incredibly buggy on OS X in early versions # of Python 2.6, so allow this call to fail. Only catch the specific # exceptions we've seen, though: this call failing in other ways can reveal # legitimate problems. try: if proxy_bypass(urlparse(url).netloc): return True except (TypeError, socket.gaierror): pass return False