00:00
OK,同学们,那么接下来啊,我们要讲一下爬虫中的异常啊,我记得我们在这个Python中啊,最后一个知识点我们讲的是啥异常,那我们为啥要讲异常来着,是不是就为了让我们的代码更加健壮啊,同学们对吧?诶,OK啊,这就是我们讲异常的意义,那接下来呢,我们要讲爬虫中的两个异常的类分别是啥呢?第一个叫URL error,第二个我们叫做HTTP啊,这两个。那么这两个它其实存在的一个关系的,我记得我们在之前的案例中啊,我们是讲过URL的组成部分的,它的组成部分有几个了。同学们是不是一共有六个呀,那如果你们记住的话,一共有六个啊,那第一个叫做啥呀?叫做协议,就是HTTP,第二个叫啥呢?叫做主机,那主机就是假如说3w.it硅谷点com,那这叫啥呀?叫主机,第三个叫端口啊,例如HTTP末日80HTPS是443等等等。
01:11
然后紧接着我们还在后边还有啥呀,叫做请求路径对吧,像我们S对吧,还有接来啥呀,是参数,例如我们WDKW等等等等啊,最后一个叫锚点,那我们知道URL里边是包含HTTP的,也就是说包含协议的,所以大家注意啊,这里边http error是啥呀?是URL error的子类。啊,UR的子类OK啊同学们,那么因因为我们通过UR lab去发送请求的时候啊,注意啊,有可能会发送失败,那这种失败的原因其实有很多,可能服务器down了对吧,可能你路径写错了等等等等,那这个时候你想让你的代码更加健壮,我们就可以干啥呀,通过try except来进行补货异常啊,进行捕获异常。
02:06
好,同学们,那我们接下来就看看啊,说我们到底都在哪块能遇到这种异常呢?我不知道同学们平时有没有看CSDN的习惯哈,来看一下,随便找点东西吧。找个啥呢,找个前端。前端找点啥呀,随便找点吧,找。啊,这里边有个杰森数据格式是吧,就它了,嗯,好,这里边同学们注意啊,我说过这里后边如果长成这样的参数,基本上是什么破广告啥的,咱没必要去看它啊,听懂了吧?在这里边呢,我把它复制一下,我要干啥?我要访问它,我要获取它的网页源码,来试试吧。来这创建一个啊,创建一个文件,嗯。嗯,然后写上上归谷下划线。
03:01
爬虫下划线,URL lib下划线,这叫啥呀?我们把它叫做异常,OK。啊,那现在我们要知道干啥要访问这个路径,并且获取它的网页源码啊,这是我们要做的啊。所以在这里边URL等于谁呀,等于它对吧,那进来我们再来个hier呗,再来hier,所以在这呢,我们有一个开复制一下,嗯,那接下来干啥呀,请求对象定制就这几步呗,所有的爬虫啊,跟各位同学讲,它的难点并不在于代码上,而是在于啥呀,爬虫与反爬虫这种博弈。他到底要啥?他有没有什么特殊的一些这个要求呢?哎,我们就都得去猜测,去揣测它,然后来攻克它,这就是爬虫的难点,等于诶,UR lab没数没倒啊各位,所以在这里边要导一下啊,Import UR lab.request OK,那么紧接着我们要请求对象定制一下L lab.request点大的request hi等于。
04:17
OK,那么紧接着我们要干啥呀?要模拟浏览器去向服务器发送请求,对不对呀?所以在这里边我们写个啥呀?Response等于your lab.request.url open里边是不是传个request没毛病吧?好,那么这个响应里边来了,它有很多很多东西嘛,对不对,所以说我们只想要啥呀,只想要里边的源码,所以说在这一个response.read.decode,对吧,然后来写一个utf杠八,我们来打印一下啊print content来运行一下走嗯,好同学们,我们发现这里面是不是很多很多数据啊,看是不是我们想要的,划到上边走走走啊,好像接森吧,注意格式没毛病吧,各位诶这就获取到了。
05:12
那么这个时候我们获取到之后啊,这那你也没看着错呀,好,我一不小心在后边加了个一啊,一不小心后边加了个一,那你再看你看啥了,报错了,报啥错了http error,那http error它是谁的子类呢。是URL的吧,那URL和HP大家注意啊,它都属于谁?URL lab.ever的一个子位,所以在这我们现在想干啥处理它,你不能给不能给这个,呃,这个这个用户看啥呀,看一堆错人看能看懂了吗?能看不懂对不对,那咋整你给他补货异常踹。啊,然后把你要捕获的这段东西给它包裹起来,那在这呢,写一个except except之后你要写啥呀?同学们你要写啥呀?你是不是要写它报错的那个类型啊,那这里边写谁呀?那同学们写谁?我们可以直接写上URL,但是你得用它的时候,你是不是倒啊,哎,Iport you are li.error啊,导到这就行了,别往下写啊,因为在这写下边的东西,我得在这写you Li点。
06:28
error.http error刚才是不是报它呀,那如果这个时候呢,干啥呢啊,你给他打一句话吧,说系统正在升级,然后点点点对吧,其实是咱们写错东西了,其实是在这儿有问题了,对吧?好同学们,我们来运行一下走,你发现系统正在升级,其实跟升级有啥关系,一般报升级,记住同学们它就错了啊,这是第一种情况啊,那么啥时候报URL呢?那告诉各位啊,URL出现的时候一般是啥呢?是你的主机地址和参数这块有问题了,那假如说在这写上写上啥呢?写上这个,假如说我们随便来个来个啥呢?来H等于啊HTTP冒号斜线3W点狗蛋111随便写点点。com啊随便写啊,我们看现在报啥错啊走。
07:27
嗯,报啥了URL,你怎么可能有狗蛋111呢,是吧,你怎么可能有狗蛋幺幺,所以在这有有问题了啊,那么在这写上except ul lab.error.url error,嗯,你再给他写一个呗,然后写上啥了,写上我都说了啥呀,系统正在升级,哎点点点对吧,我们再来运行一下走诶你发现是不是就OK了,诶这个就是啥呀,在爬虫中我们用到异常,但其实我们在做研发的时候啊。
08:02
如果涉及到爬虫这种异常,用的倒不是特别的多,但有可能会用OK吧,各位好,同学们,那我把视频暂停一下。
我来说两句