千家信息网

python爬取准备四 定义Opener和设置代理IP

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,Handler和OpenerHandler处理器和自定义Openeropener是urllib2.OpenerDirector的实例,我们之前一直在使用urlopen,它是一个特殊的opener(也就
千家信息网最后更新 2026年11月03日python爬取准备四 定义Opener和设置代理IP

Handler和Opener

Handler处理器和自定义Opener

opener是urllib2.OpenerDirector的实例,我们之前一直在使用urlopen,它是一个特殊的opener(也就是我们构建好的)。

但是urlopen()方法不支持代理、cookie等其他的HTTP/GTTPS高级功能。所有要支持这些功能:

  1.使用相关的Handler处理器来创建特定功能的处理器对象;

  2.然后通过urllib2.build_opener()方法使用这些处理器对象,创建自定义opener对象;

  3.使用自定义的opener对象,调用open()方法发送请求。

如果程序里所有的请求都使用自定义的opener,可以使用urllib2.install_open()将自定义的opener对象定义为全局opener,表示如果之后凡是调用urlopen,都将使用这个opener(根据自己的需求来选择)

自定义opener()

# _*_ coding:utf-8 _*_import urllib2# 构建一个HTTPHandler处理器对象,支持处理HTTP的请求http_handler = urllib2.HTTPHandler()# 调用build_opener()方法构建一个自定义的opener对象,参数是构建的处理器对象opener = urllib2.build_opener(http_handler)request = urllib2.Request('http://www.139.com')# 调用自定义opener对象的open()方法,发送request请求response = opener.open(request) print response.read()

设置代理IP

很多网站会检测某一段时间某个IP的访问次数(通过流量统计,系统日志等),如果访问次数多的不像正常人,它会禁止这个IP的访问。

所以我们可以设置一些代理服务器,每隔一段时间换一个代理,就算IP被禁止,依然可以换个IP继续爬取。

urllib2中通过ProxyHandler来设置使用代理服务器,使用自定义opener来使用代理:

代理IP网站:http://www.xicidaili.com/;https://www.kuaidaili.com/free/inha/

# _*_ coding:utf-8 _*_import urllib2# 构建一个Handler处理器对象,参数是一个字典类型,包括代理类型和代理服务器IP+Porthttpproxy_handler = urllib2.ProxyHandler({'http':'118.114.77.47:8080'})#使用代理opener = urllib2.build_opener(httpproxy_handler)request = urllib2.Request('http://www.baidu.com/s')#1 如果这么写,只有使用opener.open()方法发送请求才使用自定义的代理,而urlopen()则不使用自定义代理。response = opener.open(request)#12如果这么写,就是将opener应用到全局,之后所有的,不管是opener.open()还是urlopen() 发送请求,都将使用自定义代理。#urllib2.install_opener(opener)#response = urllib2.urlopen(request)print response.read()
代理 对象 处理 处理器 方法 功能 服务器 支持 服务 全局 参数 时间 次数 类型 网站 utf-8 特殊 高级 也就是 只有 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网络科技 广州为想互联网科技有限公司 互联网科技工作委员会主任 互联网核心科技是什么 互联网医疗科技 以房互联网科技 奇士达互联网科技 科技互联网公司logo 睿民互联网科技 时间互联网络科技 卫星互联网科技股票 福州新华互联网科技学校 知乎 全球顶尖互联网科技公司 互联网经济与金融科技 厦门千工互联网科技有限公司 晓花互联网科技有限公司网址 移动互联网年度科技创新 区块链结合互联网科技 南通创西澳互联网科技有限公司 银川新华互联网科技学校招聘 互联网科技工作委员会主任 科技互联网政务服务 中国互联网金融科技基金 哈尔滨新华互联网科技 宁夏众和广鑫互联网科技有限公司 中国科技创新与世界互联网大会 华夏恒生科技与互联网科技 广州富喜互联网络科技 信承诺互联网科技有限公司 第三届互联网大会安防黑科技
0