基于python的网络爬虫设计
【摘要】近年来,随着网络应用的逐渐扩展和深入,如何高效的获取网上数据成为了无数公司和个人的
追求,在大数据时代,谁掌握了更多的数据,谁就可以获得更高的利益,而网络爬虫是其中最为常用的一
种从网上爬取数据的手段。
网络爬虫,即Web Spider,是一个很形象的名字。如果把互联网比喻成一个蜘蛛网,那么Spider就是在
网上爬来爬去的蜘蛛。网络蜘蛛是通过网页的链接地址来寻找网页的。从网站某一个页面(通常是首页)
开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一
直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络蜘蛛
就可以用这个原理把互联网上所有的网页都抓取下来。
那么,既然网络爬虫有着如此先进快捷的特点,我们该如何实现它呢?在众多面向对象的语言中,首
选python,因为python是一种“解释型的、面向对象的、带有动态语义的”高级程序,可以使人在编程时保
持自己的风格,并且编写的程序清晰易懂,有着很广阔的应用前景。
关键词 python 爬虫 数据
前言
本编程设计的目的和意义
随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息
成为一个巨大的挑战。搜索引擎(例如传统的通用搜索引擎,和
等)作为一个辅助人们检索信息的工具成为用户访问万维网的入口和指南。但是,这些通
用性搜索引擎也存在着一定的局限性,如: 不同领域、不同背景的用户往往具有不同
的检索目的和需求,通用搜索引擎所返回的结果包含大量用户不关心的网页。 通用搜
索引擎的目标是尽可能大的网络覆盖率,有限的搜索引擎服务器资源与无限的网络数据资
源之间的矛盾将进一步加深。 万维网数据形式的丰富和网络技术的不断发展,图片、
数据库、音频视频多媒体等不同数据大量出现,通用搜索引擎往往对这些信息含量密集且
具有一定结构的数据无能为力,不能很好地发现和获取。 通用搜索引擎大多提供基于
关键字的检索,难以支持根据语义信息提出的查询。 为了解决上述问题,定向抓取相关网
页资源的聚焦爬虫应运而生。聚焦爬虫是一个自动下载网页的程序,它根据既定的抓取目
标,有选择的访问万维网上的网页与相关的链接,获取所需要的信息。与通用爬虫
不同,聚焦爬虫并不追求大的覆盖,而将目标定为抓取
与某一特定主题内容相关的网页,为面向主题的用户查询准备数据资源。
编程设计目及思路
编程设计目的
学习了解并熟练掌握的语法规则和基本使用,对网络爬虫的基础知
识进行了一定程度的理解,提高对网页源代码的认知水平,学习用正则表达式
来完成匹配查找的工作,了解数据库的用途,学习 !数据库的安装和
使用,及配合的工作。
设计思路
(以世纪佳缘网为例,思考自己所需要的数据资源,并以此为基础设计自己的爬虫程序。
(应用伪装成浏览器自动登陆世纪佳缘网,加入变量打开多个网页。
(通过的函数进行世纪佳缘网源代码的获取。