基于JavaWeb的网站图片爬虫设计与实现
1. 国内外研究现状
随着近年来互联技术发展,各种互联网公司兴起。尽管,在搜索引擎方面,谷歌和百度等公司在这块领域又无可撼动的地位。但是针对自身企业的对信息需求,个性化爬虫技术越来越受互联网公司的喜爱。在开源领域,很多爬虫框架,搜索框架都在不断的实践而走向成熟。例如,python实现的爬虫框架Scrapy,一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。JAVA实现的爬虫框架nutch,能够完美与solr和hadoop集成,实现个性化的检索系统。
同时,在向数据时代转型的这个时间点,互联网企业对爬虫抓取数据要的能力也越来越高。分布式爬虫和并行爬虫技术也正在应用于各个互联网企业。
2 研究目的、意义
基于java技术爬虫爬取网站图片设计和实现这个课主要为了研究提高爬虫抓取数据的效率,抓取网站图片和存储图片数据等问题,提高综合解决方案。同时根据Tobie排行榜,Java成为2015年最流行的编程语言。实践Java编程语言,研究其如何使用这门语言,感受JAVA语言的特性,感受其为何流行于当前互联网的环境。通过基于JAVA技术爬虫爬网站图片设计和实现研究,认识到爬虫的实现原理和实际的应用场景。
3 研究内容
基于java技术爬虫爬取网站图片设计和实现,主要用到了用java实现的crawler4j框架和用于存储图片数据的mongodb和mysql,以及图片展示平台的实现。
3.1 crawler4j
Crawler4j是一个开源的Java类库提供一个用于抓取Web页面的简单接口。可以利用它来构建一个多线程的Web爬虫。主要通过对Crawler4j设计和实现研究,来实践如何提高爬取图片数据的效率。
3.2 mongdb和mysql
mysql是目前最流行的开源的关系数据之一,它功能强大,能够存储多种数据类型。例如blob数据类型,char数据类型等等。图片做为非文本文件,可以以二进制流的形式存储在mysql的。
mongodb是开源的文档非关系型数据库。mongdb的数据主要以key-value的形式来存储。通过比较图片存储在mongodb和mysql的图片的存储性能比较。从而来评估基于java技术爬虫爬取网站图片设计和实现的系统的性能。
4 课题研究创新点
Crawler,使用了轻量级的多线程爬虫框架,来实现对网站图片数据爬取。积累爬取网站图片信息,可以应用图片信息的大数据处理。例如将图片信息应用机器学习领域。图片数据存储方案的设计,利用了当前比较流行nosql数据库。通过科学的测试方法,来合理的选择对新技术和流行技术的选择。
5 课题研究拟解决问题
在研究基于java技术爬虫爬取网站图片设计和实现中,我们将解决如何使用Crawler框架,如何爬取网站的图片,网站内容抓取图片重复问题和如何将图片存入数据库等问题。
6.引用
http://scrapy.org/
https://github.com/scrapy/scrapy
http://nutch.apache.org/
https://github.com/apache/nutch
https://github.com/yasserg/crawler4j
GB/T 7714罗刚. 解密搜索引擎技术实战--LUCENE & JAVA精华版(第2版)(附光[M]. 电子工业, 2014.
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
http://www.mysql.com/
https://www.mongodb.org/