爬虫(ProxyHandler)——代理

工具:python3

步骤:

1)使用ProxyHandler()构建httpproxy_handler对象 

2)使用build_opener(httpproxy_handler)构建opener

3)使用Request()构造请求

4)使用install_opener()构造一个全局opener

5)发送请求

import urllib.request

# 代理开关,表示是否启用代理
proxyswitch = True

# 构建一个Handler处理器对象,参数是一个字典,包括代理类型和代理服务器IP,port
httpproxy_handler = urllib.request.ProxyHandler({"http": "175.42.122.115:808"})

# 构建一个没有代理的处理器对象,也要有一个空字典返回
nullproxy_handler = urllib.request.ProxyHandler({})

if proxyswitch:
    opener = urllib.request.build_opener(httpproxy_handler)
else:
    opener = urllib.request.build_opener(nullproxy_handler)

request = urllib.request.Request("http://www.baidu.com/")

# 构建一个全局opener,之后所有的请求都可以用urlopen()方式发出去,也附带handler功能 urllib.request.install_opener(opener) request
= urllib.request.urlopen(request) print(request.read())

 

posted @ 2018-05-29 21:24  高圈圈  阅读(659)  评论(0编辑  收藏  举报