ProxyHandler处理器
1.代理的原理:在请求目标服务器之前,先去请求代理服务器,然后由代理服务器去请求目标服务器,代理服务器拿到目标服务器的数据后,返回给我们。
2.https://httpbin.org/ 。这个网站可以方便的查看一些http的参数
3.在代码中使用代理
- 使用urllib.request.ProxyHandler,传入代理构建一个Handler。
ProxyHandler是一个字典,字典的Key依赖于服务器能接受的类型,如:{‘http’:’ip:port’} - 使用上一步的’Handler’,以及urllib.request.build_openr 构建一个’opener’对象
- 使用上一步创建的‘opener‘,调用‘open’函数,发起请求。
示例代码如下:
from urllib import request
url = 'http://httpbin.org/ip'
# 设置代理
# 1.使用ProxyHandler,传入代理构建一个Handler
Handler = request.ProxyHandler({'http':'110.73.1.105:8123'})
# 2.使用上面Handler构建一个opener
opener = request.build_opener(Handler)
# 3.使用opener发送一个请求
resp = opener.open(url)
print(resp.read())