00:00
OK,同学们,那么上节课呢,我们讲了这个阿贾克斯的一个get请求,那么紧接着呢,我们就要讲一个啥呀,讲一个阿贾克斯的一个pose请求,那现在呢,我们要对肯德基官网啊的一个餐厅位置给大家爬取一下肯德基。啊,这里边不要点错啊,这是一个官网啊,现在看到也只有一个啊点进来点进来之后啊,同学们注意啊,啊这个我记得之前讲课的时候呢啊,然后有很多同学说老师我要吃肯德基,我说我带你爬一下肯德基吧,是吧,好爬一肯德基这里边呢,有一个啥餐厅查询啊,我要爬一下啥呢。我要爬一下北京这个城市。他哪些位置有肯德基,并且我要把前十页的数据全给它爬取下来,并且给它保存到本地啊,把它保存到本地,这是我们这次爬取的一个小知识点啊,小内容。好同学们,我们来看一下了啊,在这我们来右键检查一下啊,院检查一下,然后点network不要动啊在这选啥呢?选城市城市北京,哎,北京这是有很多很多了是吧?先把它清空一下啊,清空一下这里边儿还有个啥呢,下一页对吧?哎,我要把爬前十页,我不就得找页码之间的规律了吗?来点下一页,嗯,好像只有一个是吧,来点它。
01:27
点它其实看这我们是看不出来啥的,看谁呢?看proview啊,这里边看response,这里边好像有好多是吧,这两个都需要看一个视图,一个是响应的一个东西数据,那么我们来看一下呗,这里边有很多六里桥,然后万汇团结湖,花园路,新街口,酒仙桥,华南大厦,国展宣武门,这个建华应该是差不多吧,建华,然后这个宣武门国展餐厅,华南大厦,酒仙桥,新街口花园路,团结湖,万汇六里桥没问题吧,各位,这是它的一个街口。
02:07
好,这个接口呢,我先把它复制一下啊,就是它。诶,你发现同学们他是不是一个pose请求啊,而且这个还有一个,为啥我说他阿贾克斯呢?同学们,这次我跟同学们分享一下,因为在这里边你看到有一个阿贾克斯的核心对象,就是啥叫X request with,这里边有个值叫SL htp request,当你看到它了,你就知道它是一个阿贾克斯请求了啊,虽然阿贾克斯大家没有学过,我们爬虫也不需要掌握太多东西啊,了解即可,同学们啊。啊料即可,那么在这呢,我给它复制一下,在这我们再来创建一个新的文件啊,给它重命名一下,创建一个新的文件。然后这个是啥呢?是POS的请求,然后是肯德基官网,OK,那么我们先把它粘贴一下啊,这儿来粘贴一下,这是它的一个请求地址,那么请求地址我们发现它下边我还知道它是一个posts请求,你得先分析它POS请求之后啊,在这儿是不是有个参数啊,叫form date,这些东西你都必须要知道的,必须要知道掌握的啊,来粘贴,然后呢,这是第几页啊,这是第二页吧,同学们对吧?这是第二页,第二页那第一页是啥呢?我点一下上一页看一下啊,把这先清空。
03:45
清空在这不有上一页吗?走还是他那点它之后上面这个是一样不得看一下。在这第一页啊,第一页永远大家注意啊,都要这么去分析,你才能找到它们之间的规律,好像差不多长度差不多是吧,然后也是一个啥呢?请求看各位对吧,哎,Pose请求,那接下来我们再看一下它的参数是啥呀,是这个。
04:14
我们看有没有什么不同的地方啊,来走啥不同,同学们这里边是不是有个叫配置index。配置应该有啥意思啊,页的一个下标是不是一二啊,哎,那你看这简单了,连个计算都没有吧,啊连个计算都没有,再点下一页,这是第二页对吧,第二页看二,再点下一页。走是不是变成三了呀,诶你发现这玩意儿它也没啥呀,比较简单呢,对吧,各位,诶所以说接下来呀,我们就干啥呢,我们就来实现前十页的下载,你唯一不同的不就是配置index吗?这还没有上一个复杂呢,上一还计算了一下是吧。那么现在我们来写一写啊,Posts请求你都想想有啥知识点来的,对吧,先导入,导入啥呢?Import ul lab,点什么request,那定一个ul呗,叫base啊,下划线URL等于啥呀,等于这个俩不一样吗?你给它复制一下啊,好OK,那紧接着我们还有啥,有一个叫做参数。
05:26
对吧,哎,参数,但是我们如果想要前十页下载的话,同学们我想要前十页下载这些给它注释一下,你是不是得写个风循环来着,哎,所以说大家注意啊,写循环写个mind,然后呢,在这输入起始页start配置,等于是不是要强转来着,对吧?Input来请输入啊起始页码。再来叫end下划线配置,等于来个input来,请输入结束页码。
06:04
好,凤云环便利呗,For写啥来着,Page,然后然后写上啥呀,Start。配置吧。TRT。诶,Sorry啊,In少写个in是吧?润,然后来写上start配置,然后N的配置咋的来着,是不是加一啊对吧,各位在这写上print的配置,看是不是我们想要的,来右键运行它,写个一写个十走,嗯,一到十没问题。那么紧接着这一到十完事了,我们第一步啊,同学们是不是还是要创建啥请求对象啊,对吧?请求对象定制啊叫create_request这名咱自己定义的啊,咱自己定义的好来写上下DeFine啊,Create下角线request对吧?哎,写上写上这基础ul不就咱就用上了吗?对吧?剪切放在这里,那请求对象定制它还是一个posts请求,那么你的date是不是得加上啊?
07:15
对吧,哎,Date。是一个字典,这个D的参数有几个来着,是不是四个呀,哎,四个那在这呢,来给它这样剪切一下啊,解开注释,解开注释之后呢,大家注意啊,这个你是不是要给它加一个引号来着,对吧?选中它,选中它再加个逗号,这少啊我们就不那啥了。没有了咋整啊,给他个空的字串不也可以吗?哎,然后再来再来,好在这边呢,大家注意啊,这个值是谁呀,同学们。第一页就一,第二就二,他是谁呀,他是不是可以给传递一个配置啊,对吧,各位,哎,在这写上啊配置。好,在这加个配置不就完了吗?那么紧接着同学们注意啊,我们先干啥呀?给他找个hi吧。
08:06
找海。在hi之前我们要注意了,同学们啊,说post请求的参数,我们必须要干啥来着。啊,POS请求参数,我们是不是必须要编码,编码之后还要in code的呀,这我们之前讲的呀,对吧,各位,所以在这里边你得干什么,你得倒啊import u吧点pass啊点pass。OK,那现在我们就来呗,说date等于UD吧,点pass.u in code必须编码,那这里边写啥呀?Date编码之后还要用encode,必须得这么做啊,诶,它是底层的一个设计,好,那完事儿了,我们三月三要素已经准备好,万事俱备,只差定制。咋定制啊,是不是request等于your lab.request点大的request第一个啊,URL等于base ul,然后head等于head date等于date就O了,对吧?对,好,那么request我先不写返回啊,因为一会儿我用的时候再写返回,这样的话有助于我们编程的逻辑思维的一个培养。
09:25
好,同学们,那紧接着这玩意,这步玩意干啥呀,这请求对象定制啊,写个注释啊,叫请求对象的定制,第二步干啥呀,叫获取网页源码吧,那咋获取呀,咱们起个名叫盖下划线content,嗯,盖下线content OK。写个方法呗,DeFine get_content那么紧接着在里边要干啥?咋获取源码了呢?是不是response等于your li.request.url open这里边要传个啥来着?同学们是不是要传一个request?所以这里边要干什么啊?它是不是可以返回一个request?它既然能返回,你是不是就得接收它对吧?快等于它。
10:23
OK吧,各位,那等于它之后它是不是就可以传递过去了呀?Request它既然传递过去了,你是不是就得收一下啊,他收完了之后你是不是就能用了呀?诶这几步啊,大家注意啊,所有的计算机编程语言中,这种全参是最为直接也是最为好用的啊,也是很能锻炼大家的编程逻辑思维能力的啊好,他有了,我们接下来是不是有content等于response.read.dede OK,在里边写上utf杠吧。
11:02
对吧,各位,那最后一步要干啥呀,是不是又要下载了呀,诶在这儿呢,我们写上下载。大家对齐一下啊,叫下载好咋下载叫当下划线漏好我也不知道要传啥,我也不传对吧?啊在这呢,我们也尽量不要用快捷键啊,就开始的时候写的时候大家注意啊,要多写代码啊,不要图简单,确实我们有一些快捷键生成的不需要用啊好download漏的咋漏,Download漏的来了,我们是不是with open写个文件的名,这个文件名啊,假如说叫KFC,诶同学们这里边返回的这个数据啊,你看一下是不是也是阶层数据啊。对吧,大家,所以在这里边你还要拼接一个啥呀,拼接一个页码十页吗?在这里边把配置传过去,在这儿把配置接收过来,然后要拼它,拼它的时候注意同学们有一个什么问题来着。
12:11
是不是强制类型转换呢?配置再加上啥呀,点杰森这个写的时候点千万别忘了啊,点别忘了好W的模式再加上一个encoding等于utf-8IS FP lp.right诶我又没东西可写了,是不是各位那咋整啊,还是一样的,你调完这个内容之后啊,你是不是得给人返回去啊,你不返回我咋用啊,所以说在这里边content等于它,那在这我是不是又可以传一个content了呢?他传了同学们注意啊,这个时候有有同学肯定说,哎,我写完了不对啊,你传过去之后,他是不是得接收下,他不接收你这里边写啥呀。对吧,大家,诶这种思维非常非常重要啊。
13:02
那在这写上一个content就OK了,那么接下来同学们接下来就是见证奇迹的时刻来运行它10走,嗯,同学们,诶,你看这个还挺快的哈,我刚想说有点慢是吧?走来ctrl al加L,你看前门泾源东大桥,方庄,安定门,航天桥等等等等,那我们看一下第二页,Ctrl art加L。六里桥万汇是吧,团结湖,刚才咱们看的花园路,什么新街口啊,酒仙桥,华南大厦,国展,宣武门建华等啊这你看这不是不是都会绕了看诶都会绕了对吧,各位哎,就都OK了,所以大家注意啊,像这种接口的寻找是比较麻烦的啊,比较麻烦的多页下载啊好同学们,那接下来我把视频暂停一下。
14:00
哎。
我来说两句