爬虫时如何使用代理服务器

使用代理服务器去爬虫的原因:

使用同一个IP去爬取同一个网站上的网页,久了之后会被该网站服务器屏蔽。这个时候我们就可以使用代理服务器。因为使用代理服务器去爬取某个网站的时候,在对方的网站上,显示的不是我们真实的IP地址,而是代理服务器的IP地址。

推荐两个获取免费代理服务器的网址:

www.goubanjia.com

www.xicidaili.com

使用方法:

1. 设置代理地址(格式为:"ip地址:端口号")
2. 创建ProxyHandler
3. 创建Opener
4. 安装Opener

from urllib import request, error

if __name__ == "__main__":
    baseurl = "http://www.baidu.com"
    try:
        # 1.设置代理地址
        proxy = {"http": "119.190.184.218:8060"}
        # 2.创建ProxyHandler
        proxy_handler = request.ProxyHandler(proxy)
        # 3.创建Opener
        opener = request.build_opener(proxy_handler)
        # 4.安装Opener
        request.install_opener(opener)
        # 设置UserAgent
        headers = {
            # 冒充Google Chrome
            "User-Agent":
            "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36"
        }
        req = request.Request(url=baseurl, headers=headers)
        rsp = request.urlopen(req)
        html = rsp.read().decode()
        print(html)
    except error.URLError as e:
        print(e)
    except Exception as e:
        print(e)

猜你喜欢

转载自www.cnblogs.com/wjw2018/p/10587616.html
今日推荐