Python俱乐部
Python
小课题
京东优惠券
Python的urllib和urllib2模块使得HTTP编程变得非常容易,下面就看看urllib/urlib2使用http代理来访问网络的方法。
urllib2使用proxy必需创建一个ProxyHandler对象,然后再用build_opener创建一个OpenerDirector对象,步骤稍微复杂了一些,下面给出urllib2使用HTTP代理的例子:
import urllib2 proxy_handler = urllib2.ProxyHandler({'http': 'http://www.pythonclub.org:3128/'}) proxy_auth_handler = urllib2.HTTPBasicAuthHandler() proxy_auth_handler.add_password('realm', 'host', 'username', 'password') opener = urllib2.build_opener(proxy_handler, proxy_auth_handler) # This time, rather than install the OpenerDirector, we use it directly: f = opener.open('http://www.example.com/login.html') content = f.read()
上面的例子中的代理需要使用用户名密码验证,如果你的代理可以匿名访问的话,可以不需要创建HTTPBasicAuthHandler对象。那么使用urllib2使用HTTP代理就会简单很多。