(1) 下载Nutch0.9,将其解压到D: /中。
(2) 在Nutch的安装目录中建立一个名为url.txt的文本文件,文件中写入要抓取网站的顶级网址,即要抓取的起始页。笔者在此文件中写入如下内容: http: //wms-sites.com/。
(3) 编辑conf/crawl-urlfilter.txt文件,修改MY.DOMAIN.NAME部分:
# accept hosts in MY.DOMAIN.NAME
+^http: // ( [a-z0-9]* \.) * wms-sites.com/
(4) 编辑文件“conf/nutch-site.xml”,插入最基本的属性并设置为你希望的值。
(5) 运行Cygwin软件。由于运行Nutch自带的脚本命令需要Linux的环境,所以必须首先安装Cygwin来模拟这种环境。
(6) 运行Crawl命令抓取网站内容。在界面中输入如图5-8所示的爬行命令。
图5-8 爬行命令图
(7) 获得链接的索引。crawl文件下的全部有关索引的文件结构如图5-9所示。
图5-9 索引目录结构(www.xing528.com)
(8) 使用Web页面进行搜索。将nutch-0.9.war解压到tomcat的ROOT文件夹下,修改ROOT\WEB-INF\classes下的nutch-site.xml文件,在配置加下面的内容<property><name> searcher.dir </name> <value> D: \ nutch-0.9\ crawle </value> </prop-erty>
(9) 修改查询端查询语句,打开如图5-10所示的界面,输入关键词WMS后就可以得到含有此关键词的网址,如图5-11所示。
图5-10 查询界面
图5-11 搜索结果图
(10) 构建潜在的WMS URL数据库。在上面第 (8) 步的网址就可以构成潜在的WMS URL网址。如图5-11所示。
(11) 解析。编写Java程序做一个解析器,这个解析器是以上面第 (9) 步的URL为URL,解析出这些URL链接页面里的URL。具体的做法是以第 (9) 步的URL为起始URL,链接每个URL的页面,解析这些页面内的URL,再将所有的URL收集在一起,去掉重复URL,便得到了潜在的URL数据库。如图5-12所示。
图5-12 WMS潜在URL
(12) 探测。将第 (9) 和 (10) 步中的URL根据经验知识去掉一些不可能的URL和去掉重复的URL。再用自己编写的Java探测器对上面的URL探测,探测的方法是在这些URL后面加上 “? REQUEST=Get Capabilities&SERVICE=wms”或者不加,这要看URL本身是不是一个探测URL。探测后得到有效链接的能力信息。如用URL= http: //lioapp.lrc.gov.on.ca/cubeserv/ cubeserv.pl? REQUEST=Get Capabilities&SERVICE=wms探测,就可以得到一个包含能力信息的XML文件,如图5-13~图5-15,图5-13~图5-15是这个能力信息XML文件的部分内容。其他的URL探测后如果有能力信息返回,则类似于图5-13~图5-15。解析每个有效URL返回的能力信息,解析这些能力信息就可以创建本体。
图5-13 WMS Get Capability操作信息实例
图5-14 WMS Get Feature Info操作信息实例
图5-15 WMS Get Map操作层信息实例
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。