使用 urllib 设置代理服务

(1) 如果我们一直用同一个IP去请求同一个网站上的网页,久了之后可能会被该网站服务器屏蔽,因此我们可以使用代理IP来发起请求,代理实际上指的就是代理服务器
(2) 当我们使用代理IP发起请求时,服务器端显示的是代理IP的地址,即使被屏蔽了,我们可以换一个代理IP继续爬取,代理IP获取页面:https://www.xicidaili.com/

这里我在本地搭建了一个代理,它运行在 8888 端口,我们使用这个代理来请求服务器:

from urllib.request import ProxyHandler, build_opener

proxy_handler = ProxyHandler({
    'http': '127.0.0.1:8888',
    'https': '127.0.0.1:8888'
})

opener = build_opener(proxy_handler)
response = opener.open("http://www.baidu.com/")
print(response.read().decode('utf-8'))

 

 

 

 

 

 

 

    

posted @ 2019-03-14 16:20  孔雀东南飞  阅读(767)  评论(0编辑  收藏  举报