您所在位置:网站首页 > 海量文档

&nbsp>&nbsp计算机&nbsp>&nbspJava

毕业设计(论文)-基于JAVA的网络爬虫的设计与实现.doc63页

本文档一共被下载:次,您可全文免费在线阅读后下载本文档。

下载提示

1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

2.该文档所得收入(下载+内容+预览三)归上传者、原创者。

3.登录后可充值,立即自动返金币,充值渠道很便利

摘 要

网络爬虫是一种自动搜集互联网信息的程序。通过网络爬虫不仅能够为搜索引擎采集网络信息,而且可以作为定向信息采集器,定向采集某些网站下的特定信息,如招聘信息,租房信息等。

本文通过JAVA实现了一个基于广度优先算法的多线程爬虫程序。本论文阐述了网络爬虫实现中一些主要问题:为何使用广度优先的爬行策略,以及如何实现广度优先爬行;为何要使用多线程,以及如何实现多线程;系统实现过程中的数据存储;网页信息解析等。

通过实现这一爬虫程序,可以搜集某一站点的URLs,并将搜集到的URLs存入数据库。

【关键字】网络爬虫;JAVA;广度优先;多线程。

ABSTRACT

SPIDER is a program which 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 algorithm 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 URLs from one web site, and store URLs into database.

【KEY WORD】SPIDER; JAVA; Breadth First Search; multi-threads.第一章 引言1

第二章 相关技术介绍2

2.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

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

第三章 系统需求分析及模块设计13

3.1 系统需求分析13

3.2 SPIDER体系结构13

3.3 各主要功能模块(类)设计14

3.4 SPIDER工作过程14

第四章 系统分析与设计16

4.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

第五章 系统实现21

5.1 实现工具21

5.2 爬虫工作21

5.3 URL解析22

5.4 URL队列管理24

5.4.1 URL消重处理24

5.4.2 URL等待队列维护26

5.4.3 数据库设计27

第六章 系统测试29

第七章 结论32

参考文献33

致谢34

外文资料原文35

译文51

第一章 引言

随着互联网的飞速发展,网络上的信息呈爆炸式增长。这使得人们在网上找到所需的信息越来越困难,这种情况下搜索引擎应运而生。搜索引擎搜集互联网上数以亿计的网页,并为每个词建立索引。在建立搜索引擎的过程中,搜集网页是非常重要的一个环节。爬虫程序就是用来搜集网页的程序。以何种策略偏历互联网上的网页,也成了爬虫程序主要的研究方向。现在比较流行的搜索引擎,比如google,百度,它们爬虫程序的技术内幕一般都不公开。目前几种比较常用的爬虫实现策略:广度优先的爬虫程序,Repetitive爬虫程

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名:

验证码:

匿名?

发表评论

java网络爬虫论文_毕业设计(论文)-基于JAVA的网络爬虫的设计与实现.doc相关推荐

  1. java gui论文_毕业设计论文-基于JAVA GUI的电子邮件客户端软件的设计与实现.doc

    毕业设计论文-基于JAVA GUI的电子邮件客户端软件的设计与实现.doc 还剩 41页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧, ...

  2. java高校职工工资管理论文_毕业设计论文java大学工资管理系统

    毕业设计论文java大学工资管理系统 本 科 生 毕 业 论 文(设 计)题 目:大学工资管理系统 学 号: _________姓 名: ____ ___年 级: ___________学 院: __ ...

  3. java 解析数据包_一种基于Java语言的网络通讯数据包解析方法与流程

    本发明涉及网络通讯领域,特别涉及一种基于Java语言的网络通讯数据包解析方法. 背景技术: 计算机系统和网络的大量普及使用使全球跨入了信息化时代.但是,正由于现代社会中几乎一切都在"计算机化 ...

  4. java监听微信_一种基于java后台应用监控微信小程序的用户访问量的方法与流程...

    本发明涉及java应用与微信小程序应用开发技术领域,具体涉及一种基于java后台应用监控微信小程序的用户访问量的方法. 背景技术: 微信小程序,简称小程序,是一种不需要下载安装即可使用的应用,它实现了 ...

  5. java即时聊天系统毕业_(完整版)基于Java即时聊天系统的设计与实现毕业论文设计...

    目录 1 前言............................................................................................. ...

  6. 毕业设计之 - 基于java的CRM客户关系管理系统的设计与实现【源码+论文】

    文章目录 前言 一.项目设计 1. 模块设计 数据库设计 2. 实现效果 二.部分源码 项目源码 前言 今天学长向大家分享一个 java web 毕业设计 项目: 基于java web 的CRM客户关 ...

  7. php食堂管理刷卡系统论文,食堂管理系统_毕业设计论文

    内容介绍 原文档由会员 intt 发布 食堂管理系统_毕业设计论文 目录如下: 一. 引言 2 1.1背景与目的 2 1.2后台数据库为SQL Server 2000简介 2 二. 系统需求分析 2 ...

  8. 计算机毕业设计ssm基于JAVA毕业生发展去向查询平台及数据统计系统6263k系统+程序+源码+lw+远程部署

    计算机毕业设计ssm基于JAVA毕业生发展去向查询平台及数据统计系统6263k系统+程序+源码+lw+远程部署 计算机毕业设计ssm基于JAVA毕业生发展去向查询平台及数据统计系统6263k系统+程序 ...

  9. 【java毕业设计】基于java+swing+GUI的雷电游戏GUI设计与实现(毕业论文+程序源码)——雷电游戏

    基于java+swing+GUI的雷电游戏GUI设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+swing+GUI的雷电游戏GUI设计与实现,文章末尾附有本毕业设计的论文和源码下 ...

  10. 计算机毕业设计ssm基于java的酒店管理系统tpk08系统+程序+源码+lw+远程部署

    计算机毕业设计ssm基于java的酒店管理系统tpk08系统+程序+源码+lw+远程部署 计算机毕业设计ssm基于java的酒店管理系统tpk08系统+程序+源码+lw+远程部署 本源码技术栈: 项目 ...

最新文章

  1. C语言实现简单的面向对象例子
  2. 超大规模预训练模型专场直播:模型真的越大越好吗?
  3. 阿里巴巴Java开发手册-使用JDK8的Opional类来防止出现NPE问题
  4. 分支和循环结构的应用(习题)
  5. Java 并发编程之 volatile
  6. Android 应用开发(41)---EditText(输入框)详解
  7. Python(十)函数
  8. 墨羽卿画第二章第5节:另一个世界,腊月廿四
  9. SVN如何本地拉取项目
  10. 哔哩视频客户端与视频本地化(下载)
  11. 北京联通KD-YUN-811E改桥接
  12. 游戏静态HTML网页作业作品 大学生游戏介绍网页设计制作成品 简单DIV CSS布局网站
  13. CEO是世界上最孤独的工作
  14. 5款开源网站流量统计应用程序
  15. Mac怎么安装CAD(AutoCAD)安装教程,M系列芯片安装CAD正版 CAD教程
  16. 对于有些网站无法打开F12或者firebug的现象解答
  17. 2022年NOC软件创意编程(学而思)决赛小学低年级组scratch
  18. T-Mobile G1手机入手作业
  19. Oracle11g的企业管理器
  20. MySQL 整体知识

热门文章

  1. Cannot decompress .tar.xz file, getting “xz: Cannot exec: No such file or directory“ from tar【已解决】
  2. linux mysql 运行sql文件命令大全_linux下执行mysql的sql文件
  3. 银河麒麟V10高级服务器操作系统clickhouse数据迁移技术全网唯一
  4. angular返回上一页
  5. 装逼篇 | Python制作抖音超火的九宫格视频
  6. 6.7.1 Oops—错误地调用了C r e a t e T h r e a d
  7. 我为什么佩服柳传志?
  8. spring boot做定时任务管理模块。
  9. 12121. 买铅笔
  10. C++ 程序运行报错:计算机中丢失MSVCP140D.dll