什么是爬虫的定向爬取技术?Python爬虫定向爬取的步骤与策略

时间:2018-08-21 18:14:01   来源:上海尚学堂   阅读:

一、什么是爬虫的定向爬取技术

通俗来说,爬虫的定向爬取技术就是根据设置的主题,对要爬取的网址或者网页中的内容进行筛选。比如我们可以使用正则表达式进行筛选等,筛选之后,再爬取对应的网址中的内容,并可以根据爬取到的内容再次进行筛选。

众所周知,互联网的信息是海量的,在一个相对较短的时间内要尽可能多的爬取到我们感兴趣的信息,则不可能漫无目的地去爬取,如果漫无目的地去爬取,则必然会浪费大量的时间,所以我们需要根据我们设置的主题,拟定出对应的爬取策略与爬取规则,这样,才可以让我们在较短的时间内从海量的互联网信息中尽可能多的爬取出与主题相关的信息。而根据设定的主题建立爬虫的爬取策略与爬取规则是爬虫的定向爬取技术的核心与重点部分。

二、Python爬虫的定向爬取技术需解决的问题

具体来说,爬虫的定向爬取技术主要需要解决3个问题

1)清晰地定义好爬虫的爬取目标,规划好主题。
2)建立好爬取网址的过滤筛选规则以及内容的过滤筛选规则。
3)建立好URL排序算法,让爬虫能够明确优先爬取哪些网页、以什么顺序爬取待爬取网页。比如,待爬取的URL网址可能有很多,在爬虫资源有限的情况下,需要确定好这些网址的爬行顺序,以不一样的顺序去爬取,可能会导致不一样的爬取效率。

三、定向爬取的相关步骤与策略

 
在Python爬虫中,爬虫定向爬取的相关步骤以及实际进行信息筛选的方法和策略主要有哪些呢?

在一个Python爬虫项目中,定向爬取某些信息的步骤主要有以下:
1)、理清爬取的目的。这一步非常关键,有一个明确的爬取目的,可以让我们在设置爬取规则的时候思路更加清晰,爬取失败率更低。

2)、设置网址的过滤规则。这一步显然不是必须的,但是在网址数较多的爬取任务中合理地进行该项设置,可以大大提高爬虫的爬取效率。由于有的时候爬虫爬取的网址数量很多,要爬取的内容在某些有规律的网址中,此时,我们可以设置对应的模式,比如设置好对应的正则表达式,将不满足格式的网址过滤掉,此时爬虫就不需要爬取那些没有包含目标信息的网址了,爬虫只需要爬取满足格式的网址,即包含目标信息的网址即可,这样做可以大大的提高爬行效率,当然这一步并不是强制要求去做的。对于某些网址数量并不多的爬取任务,我们是否进行该项设置对爬取效率的影响并不会太大。

3)、设置好内容采集规则。通过这一步的设置,我们可以提取出我们关注的信息,从而过滤掉那些不关注的信息,信息筛选的方法与策略有很多,通过正则表达式去筛选信息是其中一种方法。

4)、规划好采集任务,合理的设置爬虫线程与爬虫数量。对于任务量不大的爬虫,使用一个单线程爬虫即可完成。但如果爬虫的任务量很大,此时为了提高效率,我们可以使用多线程爬虫或者使用多个爬虫去爬取对应的任务,但是,如果使用多线程爬虫或使用多个爬虫去爬取,则需要对每个爬虫要爬取的任务进行合理规划,避免出现一直重复爬取或某些目标网页漏爬的情况。

5) 、将采集结果进行相应的修正,处理成我们想要的格式。完成采集后,有可能采集结果并不是我们想要的格式,此时我们对采集的结果进行相应的修正,比如进行编码、解码格式整理等修正操作,将采集的结果处理成我们需要的格式。

6)、对结果进行进一步处理,完成任务。比如,如有需要,我们可以将结果写入数据库等,等相应的后续处理操作,从而完成我们的爬虫任务。
 


上海尚学堂python培训课程--Python爬虫技术,更多Python爬虫技术文章请返回本栏目阅读。获取Python培训课程信息和下载Python学习资料教程请联系客服小姐姐。
本文选自韦玮著《精通Python网络爬虫》。

分享:0

电话咨询

客服热线服务时间

周一至周五 9:00-21:00

周六至周日 9:00-18:00

咨询电话

021-67690939
15201841284

微信扫一扫