爬虫技术中常用工具介绍
Posted UPCOM
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫技术中常用工具介绍相关的知识,希望对你有一定的参考价值。
在去年的“实体识别”竞赛,以及现在的学习和工作中,多次使用了爬虫技术来完成各种任务。无论是爬取文本,还是爬取图像,都有一些共同的技术和技巧。今天就介绍一下爬虫技术中常用的一些工具和技巧。
urllib2
这是在构建和使用爬虫时一个不可或缺的python库,其最基本的作用就是打开一个网页,并把这个网页的源代码一股脑down下来,这也是爬虫工作最基本的一个步骤。不仅如此,使用这个库中还可以在向服务器发送请求时添加header,将这个请求伪装成浏览器所发送的请求,其作用就是突破服务器“反爬虫机制”的第一道防线——非浏览器发送的请求一律拒绝。大家有兴趣不妨不进行浏览器伪装,直接写两行代码去爬取一些网站的网页看看效果如何。当然,使用这个库还可以在发送请求时附上get和post参数,这里不再赘述。
正则表达式
这是爬取文本信息时必备的工具,其作用是在爬取到的网页源代码中将想要的文本信息提取出来。由于正则表达式的书写规则比较复杂,因此在这里推荐大家使用“在线正则表达式测试”这样一个工具,可以将要爬取的网页的源代码放入,然后对自己试写的正则表达式进行测试,看是否能得到我们想要的文本信息。当然,如果有兴趣的话能够花一些时间去掌握正则表达式的书写方法也是很有益处的。
BeautifulSoup
这是一个用于网页代码解析的神器。刚才还讲到正则表达式的复杂性,使用BeautifulSoup则可以更方便,直观地完成正则表达式能够完成的任务。我们都知道网页是一个树状的结构,使用这个工具则可以在这个树状结构中自由的进行搜索,导航,修改,分析等。譬如,其中的一个方法可以让我们按照class的标签来搜索文本,这样,对于有多个class的标签我们就可以很方便的进行提取而不需要再书写复杂的正则表达式了。总之,在爬取文本时这也是一个十分有用且提高效率的工具。
开发者工具
所谓“开发者工具”是各浏览器为方便web开发人员进行调试而设置的工具,比较好用的是Chrome和Firefox的,其他的没有用过不予评述。一般在浏览器中按“F12”快捷键即可打开开发者工具。在这个工具中,你可以清晰地看到网页加载的过程,包括异步加载的文件,文件加载的时间线,网页的树状结构化代码,网页相应各请求的信息等等,为我们爬取异步加载的页面,选择合适的正则表达式,构建请求等提供了很大的方便。这也是爬虫技术中十分方便,十分重要的一个工具。
除了这些工具,还有一些好用的爬虫框架,模块化地实现了很多的功能,大家有兴趣也可以去学习下,相信会对效率有不小的提升。
以上是关于爬虫技术中常用工具介绍的主要内容,如果未能解决你的问题,请参考以下文章