我们从Python开源项目中,提取了以下7个代码示例,用于说明如何使用urllib2.ProxyBasicAuthHandler()。
def add_proxy(self, addr, proxy_type='all', user=None, password=None): """Add proxy""" if proxy_type == 'all': self.proxies = { 'http': addr, 'https': addr, 'ftp': addr } else: self.proxies[proxy_type] = addr proxy_handler = urllib2.ProxyHandler(self.proxies) self.__build_opener() self.opener.add_handler(proxy_handler) if user and password: pwd_manager = urllib2.HTTPPasswordMgrWithDefaultRealm() pwd_manager.add_password(None, addr, user, password) proxy_auth_handler = urllib2.ProxyBasicAuthHandler(pwd_manager) self.opener.add_handler(proxy_auth_handler) urllib2.install_opener(self.opener)
def test_proxy_basic_auth(self): opener = OpenerDirector() ph = urllib2.ProxyHandler(dict(http="proxy.example.com:3128")) opener.add_handler(ph) password_manager = MockPasswordManager() auth_handler = urllib2.ProxyBasicAuthHandler(password_manager) realm = "ACME Networks" http_handler = MockHTTPHandler( 407, 'Proxy-Authenticate: Basic realm="%s"\r\n\r\n' % realm) opener.add_handler(auth_handler) opener.add_handler(http_handler) self._test_basic_auth(opener, auth_handler, "Proxy-authorization", realm, http_handler, password_manager, "http://acme.example.com:3128/protected", "proxy.example.com:3128", )
def __init__(self, login, password): """ Start up... """ self.login = login self.password = password # Simulate browser with cookies enabled self.cj = cookielib.MozillaCookieJar(cookie_filename) ''' Creating settings for the proxy ''' # proxy_handler = urllib2.ProxyHandler({'http':'209.222.25.83:3128'}) # 216.58.194.113 # proxy_handler = urllib2.ProxyHandler({'http':'8.8.8.8'}) proxy_handler = urllib2.ProxyHandler({'http':'notional-sign-110911.appspot.com'}) # proxy_auth_handler = urllib2.ProxyBasicAuthHandler() if os.access(cookie_filename, os.F_OK): self.cj.load() self.opener = urllib2.build_opener( urllib2.HTTPRedirectHandler(), urllib2.HTTPHandler(debuglevel=0), urllib2.HTTPSHandler(debuglevel=0), proxy_handler, urllib2.HTTPCookieProcessor(self.cj) ) self.opener.addheaders = [ ('User-agent', ('Mozilla/4.0 (compatible; MSIE 6.0; ' 'Windows NT 5.2; .NET CLR 1.1.4322)')) ]
def SHOWS(url): if __settings__.getSetting('proxy_use') == 'true': proxy_server = None proxy_type_id = 0 proxy_port = 8080 proxy_user = None proxy_pass = None try: proxy_server = __settings__.getSetting('proxy_server') proxy_type_id = __settings__.getSetting('proxy_type') proxy_port = __settings__.getSetting('proxy_port') proxy_user = __settings__.getSetting('proxy_user') proxy_pass = __settings__.getSetting('proxy_pass') except: pass passmgr = urllib2.HTTPPasswordMgrWithDefaultRealm() proxy_details = 'http://' + proxy_server + ':' + proxy_port passmgr.add_password(None, proxy_details, proxy_user, proxy_pass) authinfo = urllib2.ProxyBasicAuthHandler(passmgr) proxy_support = urllib2.ProxyHandler({"http" : proxy_details}) opener = urllib2.build_opener(proxy_support, authinfo) urllib2.install_opener(opener) f = urllib2.urlopen(url) buf = f.read() buf=re.sub('&','&',buf) buf=re.sub('·','',buf) #print "BUF %s" % buf f.close() buf = buf.split('grid-list__item width--one-half width--custard--one-third') for p in buf: try: linkurl= re.compile('href="(.+?)"').findall (p)[0] #print linkurl image= re.compile('srcset="(.+?)"').findall (p)[0].replace('w=304&h=174','w=800&h=450') #print image name= re.compile('"tout__title complex-link__target theme__target">(.+?)</h3',re.DOTALL).findall (p)[0].strip() #print name episodes = re.compile('"tout__meta theme__meta">(.+?)</p',re.DOTALL).findall (p)[0].strip() #print episodes if 'day left' in episodes or 'days left' in episodes : addDir2(name+' - '+episodes,linkurl,3,'', '',image,'',isFolder=False) else: if not 'no episodes' in episodes.lower(): addDir(name+' - '+episodes,linkurl,2,image) except:pass setView('tvshows', 'show')