登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 文献综述 > 计算机类 > 计算机科学与技术 > 正文

面向Web Services的网络爬取系统设计与实现文献综述

 2020-06-24 19:49:01  

文 献 综 述

过去多年来,伴随着互联网的不断发展与进步,Web服务技术也得到了不断蓬勃的创新与发展,通过Web服务技术在互联网中传递的信息也十分庞大。与此同时,想要在这浩瀚庞大的信息海洋中找到自己想要的信息,只有借助于搜索引擎的网络工具来搜索自己需要的信息,但在实现搜索引擎技术的时候,网络爬虫技术作为选取符合搜索要求的利器也活跃于大众眼前。搜索引擎技术随着互联网的日益壮大而飞速发展.作为搜索引擎不可或缺的组成部分,网络爬虫的作用显得尤为重要。

Web服务技术作为SOA思想的最佳实现方式,已成为产业界和学术界热门的研究方向。而如今通用的搜索引擎技术在查询相关的服务信息时不能很好地支持WebService,在这个过程中需要对查询地信息进行分类去除冗余、整合等一系列繁琐的步骤,大大降低了Web服务发现的效率,成为如今在web服务中爬取信息的一大问题。

网络爬虫是一种自动爬取网页信息的程序,是搜索引擎最重要的构件。它可以从互联网上查询需要的信息并收集存储到本地数据库中,它会从一个或若干个初始网页的URL开始,获得初始网页上的URL,在爬取网页的过程中,不断从网页中爬取新的URL加入爬取队列,直到爬取完整个爬取系统需要的信息。最后,被爬虫爬取的信息将会被系统存储下来再进一步的进行分析,过滤和整合以便于之后的查询和检索。

本次毕业设计旨在实现一个面向WebService的网络爬取系统。此次开发主要采用基于Python的爬虫爬取技术,在Linux系统下,使用Apache相关服务器,Mysql等数据库技术进行实现。于此同时,为了更好的展现爬虫爬取的信息数据效果,提高人机之间的交互性,我们将开发一个客户端搭配主流的交互技术,搭配JavaScript,python服务器及客户端技术,来增强该程序的交互丰富性。

Python爬虫技术包括python基础语言的运用,Socket网络编程,urllib2库,Scrapy爬虫框架的开发应用以及正则表达式的使用。Python具有丰富和强大的库,它作为一种胶水语言,能够把用其他语言制作的各种模块很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写。Socket起源于Unix,而Unix/Linux基本哲学之一就是”一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。Socket就是该模式的一个实现,Socket即是一种特殊的文件,一些Socket函数就是对其进行的操作。基本上,Socket 是任何一种计算机网络通讯中最基础的内容,在本次毕业设计中需要该工具对web服务进行应用。urllib2库是Python的一个获取URLs的基础组件,它以urlopen函数的形式提供了一个非常简单的接口,并实现一系列用于操作URL的功能,通过它,可以很方便的对URL内容进行需要的操作。Scrapy爬虫框架是一个为了爬取网站数据,提取结构性数据而编写的应用框架,可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取所设计的,也可以应用在获取API所返回的数据或者通用的网络爬虫,可以说它相对于基础的Urllib2库,具有更完整和优秀的功能实现,运用该框架可以节省该次爬虫程序中繁琐冗余的程序设计。最后,正则表达式又称规则表达式。正则表达式通常被用来检索、替换那些符合某种规则的文本,正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。正则表达式作为一个处理字符串的强大工具,方便了我们在网络爬取过程中对于所需要信息的精准查询。

Lamp指的是linux apache mysql python/php开发环境。在Linux环境下拥有本地的python开发环境与多样的python开发库支持,在强大的命令行工具下,可以方便我们在爬取过程中对程序内容进行调控,对我们网络爬取系统整体的开发效率上有着不小的提升。Apache是最流行的Web服务器端软件之一,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性而被广泛使用,它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。在本次爬取系统的设计中,它提供了本地后端服务器的支持,同时对于客户端的开发设计也提供了服务支持。Mysql是一种关系型数据库管理系统,关系型数据库将数据保存在不同的数据表中,增加了数据增删改查的速度并提高了灵活性,它所使用的SQL语言是用于昂问数据库的常用标准化语言。在本次爬取系统设计中,它将肩负存储所爬取信息并不断被使用分析,过滤等功能。

Javascript,python服务器技术以及数据分析技术在本次网络爬取系统的设计中提供了更加多样的功能开发与实现。JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。作为一种解释型语言,可以及时响应客户端事件并灵活处理各个对象的各种方法和属性,具有不错的实时性和动态性。Python服务器技术在本次开发中被运用来实现后端的服务的功能,为整个开发过程提供了基本的服务器技术支持。数据分析技术主要利用了python语言对于数据分析所拥有的强大的python开发库来对所爬取的信息进行数据分析,之后对数据进行过滤整合进而展现于用户面前。

采用上述所使用的开发技术与模型可以使我们在实现网络爬取系统的设计中进行更加高效,稳定的开发,方便了我们的开发过程,节省了开发当中所花费的冗余时间。

参考文献:

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图