天天看点

python http代理_使用HTTP PROXY - Python

即使没有HTTP_PROXY环境变量,您也可以这样做。试试这个样本:

import urllib2

proxy_support = urllib2.ProxyHandler({"http":"http://61.233.25.166:80"})

opener = urllib2.build_opener(proxy_support)

urllib2.install_opener(opener)

html = urllib2.urlopen("http://www.google.com").read()

print html

在您的情况下,似乎代理服务器似乎拒绝连接。

还有更多尝试:

import urllib2

#proxy = "61.233.25.166:80"

proxy = "YOUR_PROXY_GOES_HERE"

proxies = {"http":"http://%s" % proxy}

url = "http://www.google.com/search?q=test"

headers={'User-agent' : 'Mozilla/5.0'}

proxy_support = urllib2.ProxyHandler(proxies)

opener = urllib2.build_opener(proxy_support, urllib2.HTTPHandler(debuglevel=1))

urllib2.install_opener(opener)

req = urllib2.Request(url, None, headers)

html = urllib2.urlopen(req).read()

print html

编辑2014: 这似乎是一个受欢迎的问题/答案。但是今天我会改用第三方requests模块。

对于一个请求,只需:

import requests

r = requests.get("http://www.google.com",

proxies={"http": "http://61.233.25.166:80"})

print(r.text)

对于多个请求,请使用Session对象,这样您就不必proxies在所有请求中添加参数:

import requests

s = requests.Session()

s.proxies = {"http": "http://61.233.25.166:80"}

r = s.get("http://www.google.com")

print(r.text)