随着大数据和人工智能多次被大佬提及之后,并且被定义为未来的大趋势后,天然适合于大数据和人工智能的编程语言python也异常火热,市面上出现了不少的高价格、大规模的python培训机构和python教程。
作为python的年轻用户,其实不是很建议非编程科班花太多时间研究python,作为一门语言,掌握并且运用需要系统的知识,需要大量的时间和实操场景的;为了让没有经验但是对python好奇的朋友理解python,那我就以一个例子具体来介绍python的在采集数据中的具体运用。
如下图,我们需要采集先后排名、电影名称、主演、上映时间、评分5个信息,而且这些排名是分布在1-10页之间,每页总共10条信息,这就需要做翻页处理。

爬虫采集的基本步骤是通过发送requests请求,获得返回网页信息,再从获得的返回信息,提取出需要的信息,最后呢,对信息保持处理。下面就以采集猫眼电影前100榜单排名信息为例。
一、通过requests发送请求信息:
如下图所示,导入requests库,定义一个链接函数,在函数里面发送采集请求,再获得需要的采集信息,为了保证采集的顺利,这里还对返回的状态码做了判断;

最终得到的返回信息如下图:

二、抽取需要的信息:
通过上面发现,我们获得的夹杂这代码的信息,因此是需要对目标信息做抽取处理。这里我们用的是正则表达式来对内容做处理。
仔细观察不难发现,每条信息的HTML内容都是一样的,所以我只需要对其中一条信息做抽取,之后用循环完成100条信息的抽取,具体如下:
1、正则表达式内容如下,红框内容就是我们需要的信息


2、通过定义函数抽取需要的信息:下图就是定义一个参数为HTML的函数,在函数里面通过正则表达式获得目标信息,并且把这些信息整理成一个固定的容器。

得到如下效果:这些信息并不是按照需要的效果组合起来,并且还有一些不必要的分行字符,这些效果还是需要重新整理。

因此需要,这里通过for循环逐次把同组信息整理在一起,并且通过strip()方法去掉换行字符,得到:

三、将采集得到的信息保持在文档中
把上述信息整理完毕后,就需要将这些信息存储在文档中,这里就存储在电脑上并且格式为text文档。这里需要注意的是,要对编码做修改,以防出现乱码的情况,具体信息:

以上采集的只是一个页面,但是这里有10页信息需要采集,因此需要对url路径做设置,当在采集时自动翻页
全文代码:

网友评论