文档库 最新最全的文档下载
当前位置:文档库 › 网络爬虫

网络爬虫

网络爬虫
网络爬虫

网络爬虫

1.什么是爬虫

2.网络爬虫工具

3.网页搜索策略

4.信息获取

1 . 什么是网络爬虫?

网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。目标数据模式的爬虫针对的是网页上的数据,所抓取的数据一般要符合一定的模式,或者可以转化或映射为目标数据模式。

网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。

《把互联网比喻成一个蜘蛛网,那么Spider就是在网上爬来爬去的蜘蛛。网络蜘蛛是通过网页的链接地址来寻找网页,从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络爬虫就可以用这个原理把互联网上所有的网页都抓取下来。下面大体介绍主题爬虫的工作原理。》

2 . 网络爬虫工具

1.Heritrix ——是一个开源,可扩展的web爬虫项目。Heritrix是一个爬虫框架,可加入一些可互换的组件。

2.WebSPHINX ——是一个Java类包和Web爬虫的交互式开发环境。Web爬虫是可以自动浏览与处理Web页面的程序。

3.WebLech——是一个功能强大的Web站点下载与镜像工具。它支持按功能需求来下载web站点并能够尽可能模仿标准Web浏览器的行为。WebLech有一个功能控制台并采用多线程操作。

4.Arale ——主要为个人使用而设计,而没有像其它爬虫一样是关注于页面索引。

5.Jspider——是一个完全可配置和定制的Web Spider引擎.你可以利用它来检查网站的错误,网站内外部链接检查,分析网站的结构

6.Spindle——是一个构建在Lucene工具包(是一个基于Java 的全文信息检索工具包)之上的Web索引/搜索工具.

7.Arachnid(蛛形纲动物)——是一个基于Java的网络爬虫框架.

https://www.wendangku.net/doc/7b18329012.html,RM ——LARM能够为Jakarta Lucene搜索引擎框架的用户提供一个纯Java的搜索解决方案。。

9.JoBo——是一个用于下载整个Web站点的简单工具。它本质是一个Web Spider。它的主要优势是能够自动填充form。

10.snoics-reptile——是用纯Java开发的,用来进行网站镜像抓取的工具,

11.ItSucks——是一个java web spider(web机器人,爬虫)开源项目。

12.Smart and Simple Web Crawler——是一个Web爬虫框架。集成Lucene支持。该爬虫可以从单个链接或一个链接数组开始。

13.Crawler4j——是一个开源的Java类库提供一个用于抓取Web页面的简单接口。可以利用它来构建一个多线程的Web爬虫。

14.Crawler——是一个简单的Web爬虫。它让你不用编写枯燥,容易出错的代码,

详细内容:https://www.wendangku.net/doc/7b18329012.html,/xletian/blog/item/1953711e326e3ae41ad57673.html

3 . 网页搜索策略

网页的抓取策略可以分为深度优先、广度优先和最佳优先三种。深度优先在很多情况下会导致爬虫的陷入(trapped)问题,目

前常见的是广度优先和最佳优先方法。

(1) 广度优先搜索策略

广度优先搜索策略是指在抓取过程中,在完成当前层次的搜索后,才进行下一层次的搜索。该算法的设计和实现相对简单。在目前为覆盖尽可能多的网页,一般使用广度优先搜索方法。另外一种方法是将广度优先搜索与网页过滤技术结合使用,先用广度优先策略抓取网页,再将其中无关的网页过滤掉。

(2) 深度优先搜索策略

深度优先搜索策略是指网络爬虫会从起始页开始,一个链接一个链接跟踪下去,处理完这条线路之后再转入下一个起始页,继续跟踪链接。这个方法的优点是网络爬虫在设计的时候比较容易。

(3) 最佳优先搜索策略

最佳优先搜索策略按照一定的网页分析算法,预测候选URL与目标网页的相似度,或与主题的相关性,并选取评价最好的一个或几个URL进行抓取。它只访问经过网页分析算法预测为“有用”的网页。

4 . 信息获取

信息获取——是一个输入输出过程

输入:未知文本信息

输出:固定格式,无二意性数据

这些被抽取出来的数据可以——

直接显示给用户,存储于数据库或电子表格式,被用于搜索系统(以便于将来进行检索访问)

信息获取的途径:

1.通过搜索引爆获取

2.利用机构网站和专业网站获取专业信息

3.利用数据库获取优质信息

典型的信息获取系统应包括:

1.预处理过程

2.命名实体探测过程

3.事件探测过程

通过预处理过程——可以将文本分解成为有一定语言意义的语言片段,并对这些语言片段进行标记,使文本能够被转换成为更易于被信息抽取系统处理的模式。

命名实体探测过程——实现对命名实体的探测,并通过参照实现实体之间的联系。

事件探测过程——它抽取某一实践中的事件信息并将事件信息与某个组织或其他实体相关联,构造出事件的概貌。

相关文档