超链接检测解读.docVIP

  • 8
  • 0
  • 约1.03万字
  • 约 19页
  • 2016-03-13 发布于湖北
  • 举报
课程设计III 设计说明书 网页中超链检测程序设计 学生姓名 学 号 班 级 成 绩 指导教师 数学与计算机科学学院 2014 年 3 月 7 日 课程设计任务书 2013 —2014 学年第 一 学期 课程设计名称: 课程设计三 课程设计 课程设计题目: 网页中超链检测程序设计 完 成 期 限: 自 2014 年 9 月 2日至 2014 年 9 月 13日共 2 周 设计内容: 1. 任务说明 设计一个程序,给一个指定URL,分析该URL所在域中所有网页中的超链接情况:本域内链接、外域链接、页内链接、死链(链接目标不存在)等情况。 要求 了解网络爬虫的架构和工作原理,实现网络爬虫的基本框架; 开发平台采用JDK 1.60 eclipse集成开发环境。 要求按时按量完成所规定的实验内容; 界面设计要求通用性强、具有实用性; 指导教师: 教研室负责人: 课程设计评阅 评语: 指导教师签名: 年 月 日 摘 要 设计了一个基于宽度优先的爬虫程序,本程序采用java编程语言,开发平台采用JDK 1.60 eclipse集成开发环境。可实现检测网页中超链接,是一种自动搜集互联网信息的程序,可以搜集某一站点的URL,并将搜集到的URL存入文件。? 关键词: 网络爬虫;JAVA;超链接 目 录 1 绪论 1 2 网络爬虫 2 3 对URL的认识 4 4 通过URL抓取网页 5 5 算法分析及程序实现 7 6 总结 14 1 绪论 随着网络的迅速发展,成为大量信息的载体,。(Search Engine),例如传统的,Yahoo和Google等,作为一个辅助人们检索信息的工具成为用户访问的入口和指南。但是,这些通用性也存在着一定的局限性,如: 网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。 图 2.1 宽度优先遍历 图2.1所示的宽度优先遍历的访问顺序为: A-B-C-D-E-F-H-G-I 把互联网看成一个“超图”,以采用宽度优先遍历的方式进行访问。实际的爬虫项目是从一系列的种子链接开始的。 所谓种子链接, 就好比宽度优先遍历中的种子节点(如图2.1中的 A 节点)一样。实际的爬虫项目中种子链接可以有多个,而宽度优先遍历中的种子节点只有一个。 整个的宽度优先爬虫过程就是从一系列的种子节点开始, 把这些网页中的 “子节点” (也就是超链接)提取出来, 放入队列中依次进行抓取。 被处理过的链接需要放入一张表(通常称为 Visited 表)中。每次新处理一个链接之前,需要查看这个链接是否已经存在于 Visited 表中。如果存在,证明链接已经处理过,跳过,不做处理,否则进行下一步处理。实际的过程如图 2.2 所示。 图 2.2 宽度优先遍历 开始的 URL 地址是爬虫系统中提供的种子 URL(一般在系统的配置文件中指定)。 当解析这些种子 URL 所表示的网页时,会产生新的 URL(比如从页面中的a href=“”中提取出 这个链接)。然后,进行以下工作: (1) 把解析出的链接和 Visited 表中的链接进行比较,若 Visited 表中不存在此链接, 表示其未被

文档评论(0)

1亿VIP精品文档

相关文档