Python 设置 IP 代理 访问网页 ( 用户名密码验证代理 )

1. Python 的 urllib2 设置带有密码验证的代理服务器,简洁写法如下:
proxy_handler = urllib2.ProxyHandler({'http': 'username:psw@IP:port'})
opener = urllib2.build_opener(proxy_handler)
urllib2.install_opener(opener)
response = urllib2.urlopen('http://google.com')
html = response.read()

 此种写法中,代理部分urllib2.ProxyHandler({'http': 'username:psw@IP:port'})的

'username:psw@IP:port' 没有添加“http://”, 但是效果相同!

2. urllib2的opener中的 handler 默认值当中,已经有HTTPHandler 所以 如下的写法中
import urllib2
proxy_support = urllib2.ProxyHandler({'http':'http://usename:psw@IP:port'})
auth = urllib2.HTTPBasicAuthHandler()
opener = urllib2.build_opener(proxy_support, auth, urllib2.HTTPHandler)
urllib2.install_opener(opener)
response = urllib2.urlopen('http://google.com')
html = response.read()

  

后面添加的 HTTPBasicAuthHandler, urllib2.HTTPHandler 实际上并没有额外的作用! 第一种的简洁写法已经可以使用!

原文地址:https://www.cnblogs.com/operaculus/p/5741479.html