urllib2的异常处理】的更多相关文章

异常处理 作为爬虫的抓取过程基本就那么多内容了,后面再将一些正则表达式的东西简单介绍一下基本就完事了,下面先说说异常处理的方法.先介绍一下抓取过程中的主要异常,如URLError和HTTPError. URLError可能产生的原因主要有:网络无连接,即本机无法上网:连接不到特定的服务器:服务器不存在等.如下所示: 错误代号是11004,错误原因是getaddrinfo failed.这类错误相对来说比较少,理由是在我们抓取网页时,一般都会人工通过浏览器访问一遍,而最为常见的是HTTPError…
一.urllib2模块回顾 urllib2模块中最重要的函数是urlopen()函数,用于获取URLs资源(Uniform Resorce Locators).urlopen函数不仅可以用于简单的情况,还可以进行复杂情况下的资源获取如认证(authentication).cookies.代理等.urlopen支持多种协议,如http.ftp.file等. HTTP是基于请求.响应的协议,客户端发出请求.服务器端作出响应.urllib2通过Request对象反映发出的HTTP请求,调用urlope…
urllib2 的异常错误处理 在我们用urlopen或opener.open方法发出一个请求时,如果urlopen或opener.open不能处理这个response,就产生错误. 这里主要说的是URLError和HTTPError,以及对它们的错误处理. URLError URLError 产生的原因主要有: 没有网络连接 服务器连接失败 找不到指定的服务器 我们可以用try except语句来捕获相应的异常.下面的例子里我们访问了一个不存在的域名: # urllib2_urlerror.p…
import urllib2response = urllib2.urlopen("http://www.baidu.com")print response.read() urlopen(url, data, timeout) 构造Requset import urllib2 request = urllib2.Request("http://www.baidu.com")response = urllib2.urlopen(request)print respon…
一直以来技术群里会有新入行的同学提问关于urllib和urllib2以及cookielib相关的问题.所以我打算在这里总结一下,避免大家反复回答同样的问题浪费资源. 这篇属于教程类的文字,如果你已经非常了解urllib2和cookielib那么请忽略本篇. 首先从一段代码开始, #cookie import urllib2 import cookielib cookie = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.H…
urllib2.urlopen超时问题 没有设置timeout参数,结果在网络环境不好的情况下,时常出现read()方法没有任何反应的问题,程序卡死在read()方法里,搞了大半天,才找到问题,给urlopen加上timeout就ok了,设置了timeout之后超时之后read超时的时候会抛出socket.timeout异常,想要程序稳定,还需要给urlopen加上异常处理,再加上出现异常重试,程序就完美了. import urllib2 url='http://www.facebook.com…
urllib and urllib2 区别 –博主提示:下面的是python2中的用法,python3需要做出相应修改. urllib和urllib2模块都做与请求URL相关的操作,但他们提供不同的功能. urllib2.urlopen accepts an instance of the Request class or a url, (whereas urllib.urlopen only accepts a url 中文意思就是:urllib2.urlopen可以接受一个Request对象…
们在使用爬虫来抓取网页内容的时候,HTTP异常是必须要注意的一项,所以本文,我们来详细探寻一下HTTP异常处理的相关内容,通过一些具体的实例来分析一下,非常的简单,但是却很实用.   先来说一说HTTP的异常处理问题. 当urlopen不能够处理一个response时,产生urlError. 不过通常的Python APIs异常如ValueError,TypeError等也会同时产生. HTTPError是urlError的子类,通常在特定HTTP URLs中产生. 1.URLError 通常,…
本节内容: 异常处理.Socket语法.SocketServer实现多并发.进程和线程.线程锁.GIL.Event.信号量.进程间通讯.生产者消费者模型.队列Queue.multiprocess实例 异常处理.红绿灯.吃包子实例 一:异常处理: 异常是因为程序出现了错误而在正常的控制流以为采取的行为,当python检测到一个异常的时候,解释器就会支出当前流已经无法继续下去,这时候就出现了异常,从python 1.5开始,所有的标准异常都是实用类实现的, Python的异常处理能力是很强大的,可向…
1.最简单用法 urlopen(url, data=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT,...) import urllib2 import urllib response = urllib2.urlopen("http://www.baidu.com") print 'getcode():',response.getcode() print 'geturl():',response.geturl() print 'url:',re…