以下是使用Python发送HTTP请求时使用代理的代码模板:
```python
import requests
# 设置代理
proxies = {
"http": "http://your_proxy_address:your_proxy_port",
"https": "http://your_proxy_address:your_proxy_port"
}
# 发送请求
response = requests.get("Example Domain", proxies=proxies)
# 处理响应
print(response.text)
```
其中,`your_proxy_address`和`your_proxy_port`需要替换为你所使用的代理服务器的地址和端口号。如果代理服务器需要用户名和密码认证,可以在`proxies`字典中添加`"http://username:password@your_proxy_address:your_proxy_port"`和`"https://username:password@your_proxy_address:your_proxy_port"`两个键值对,分别用于HTTP和HTTPS请求。
另外,如果你需要在请求中添加HTTP头部信息,可以在`requests.get()`方法中传递一个`headers`参数,例如:
```python
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}
response = requests.get("Example Domain", proxies=proxies, headers=headers)
```
这里的`User-Agent`头部信息用于模拟浏览器发送请求。
附上完整代码示例:
#! -*- encoding:utf-8 -*-
import requests
# 要访问的目标页面
targetUrl = "http://ip.hahado.cn/ip"
# 代理服务器
proxyHost = "ip.hahado.cn"
proxyPort = "39010"
# 代理隧道验证信息
proxyUser = "username"
proxyPass = "password"
proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % {
"host" : proxyHost,
"port" : proxyPort,
"user" : proxyUser,
"pass" : proxyPass,
}
proxies = {
"http" : proxyMeta,
"https" : proxyMeta,
}
resp = requests.get(targetUrl, proxies=proxies)
print resp.status_code
print resp.text