《网络爬虫的设计与实现毕业论文》由会员分享,可在线阅读,更多相关《网络爬虫的设计与实现毕业论文(63页珍藏版)》请在金锄头文库上搜索。
1、摘要网络爬虫是一种自动搜集互联网信息的程序。通过网络爬虫不仅能够为搜索引擎采集网络信息,而且可以作为定向信息采集器,定向采集某些网站下的特定信息,如招聘信息,租房信息等。本文通过 JAVA 实现了一个基于广度优先算法的多线程爬虫程序。本论文阐述了网络爬虫实现中一些主要问题:为何使用广度优先的爬行策略,以及如何实现广度优先爬行;为何要使用多线程,以及如何实现多线程;系统实现过程中的数据存储;网页信息解析等。通过实现这一爬虫程序,可以搜集某一站点的 URLs,并将搜集到的 URLs存入数据库。【关键字】网络爬虫;JAVA;广度优先;多线程。ABSTRACTSPIDER is a program w
2、hich can auto collect informations from internet. SPIDER can collect data for search engines, also can be a Directional information collector, collects specifically informations from some web sites, such as HR informations, house rent informations.In this paper, use JAVA implements a breadth-first a
3、lgorithm multi-thread SPDIER. This paper expatiates some major problems of SPIDER: why to use breadth-first crawling strategy, and how to implement breadth-first crawling; why to use multi-threading, and how to implement multi-thread; data structure; HTML code parse. etc. This SPIDER can collect URL
4、s from one web site, and store URLs into database.【KEY WORD】SPIDER; JAVA; Breadth First Search; multi-threads.目录第一章第一章 引言引言.1 1第二章第二章 相关技术介绍相关技术介绍.2 22.1 JAVA 线程.2 2.1.1 线程概述 .2 2.1.2 JAVA 线程模型.2 2.1.3 创建线程 .3 2.1.4 JAVA 中的线程的生命周期.4 2.1.5 JAVA 线程的结束方式.4 2.1.6 多线程同步 .5 2.2 URL 消重.5 2.2.1 URL 消重的意义.5
5、2.2.2 网络爬虫 URL 去重储存库设计 .5 2.2.3 LRU 算法实现 URL 消重.7 2.3 URL 类访问网络.8 2.4 爬行策略浅析 .8 2.4.1 宽度或深度优先搜索策略.8 2.4.2 聚焦搜索策略 .9 2.4.3 基于内容评价的搜索策略.9 2.4.4 基于链接结构评价的搜索策略 .10 2.4.5 基于巩固学习的聚焦搜索 .11 2.4.6 基于语境图的聚焦搜索 .11第三章第三章 系统需求分析及模块设计系统需求分析及模块设计.13133.1 系统需求分析 .13 3.2 SPIDER 体系结构.13 3.3 各主要功能模块(类)设计 .14 3.4 SPIDE
6、R 工作过程.14第四章第四章 系统分析与设计系统分析与设计.16164.1 SPIDER 构造分析.16 4.2 爬行策略分析 .17 4.3 URL 抽取,解析和保存.18 4.3.1 URL 抽取.18 4.3.2 URL 解析.19 4.3.3 URL 保存.19第五章第五章 系统实现系统实现.21215.1 实现工具 .21 5.2 爬虫工作 .21 5.3 URL 解析.22 5.4 URL 队列管理.245.4.1 URL 消重处理.24 5.4.2 URL 等待队列维护.26 5.4.3 数据库设计 .27第六章第六章 系统测试系统测试.2929第七章第七章 结论结论.3232
7、参考文献参考文献.3333致谢致谢.3434外文资料原文外文资料原文.3535译文译文.5151第一章 引言随着互联网的飞速发展,网络上的信息呈爆炸式增长。这使得人们在网上找到所需的信息越来越困难,这种情况下搜索引擎应运而生。搜索引擎搜集互联网上数以亿计的网页,并为每个词建立索引。在建立搜索引擎的过程中,搜集网页是非常重要的一个环节。爬虫程序就是用来搜集网页的程序。以何种策略偏历互联网上的网页,也成了爬虫程序主要的研究方向。现在比较流行的搜索引擎,比如 google,百度,它们爬虫程序的技术内幕一般都不公开。目前几种比较常用的爬虫实现策略:广度优先的爬虫程序,Repetitive 爬虫程序,定义爬行爬虫程序,深层次爬行爬虫程序。此外, 还有根据概率论进行可用 Web 页的数量估算, 用于评估互联网 Web 规模的抽样爬虫程序; 采用爬行深度、页面导入链接量分析等方法, 限制从程序下载不相关的 Web 页的选择性爬行程序等等。爬虫程序是一个自动获取网页