网络爬虫(1):概述

简介:

最近开始写搜索引擎项目了,基于Linux平台的,用纯C编写。项目主要参考以下书籍:

  1. 《走进搜索引擎》,梁斌,电子工业出版社
  2. 《搜索引擎原理、实践与应用》,卢亮、张博文,电子工业出版社
  3. 《搜索引擎——原理、技术与系统》,李晓明、闫宏非、王继民,科学出版社

这三本书其实重复的部分很多,但是国内这方面的参考资料实在少的可怜,而且太偏理论,所以有条件的话,还是建议把三本书都找来读读。

开发计划

项目第一步是实现对于给定范围内的数据的抓取和更新,目标区域是海大所有网站或教育网所有网站,千万级的数据量。

这个计划又分为三步:

  1. 单线程定向抓取
  2. 多线程抓取
  3. 分布式抓取

目前第一步:单线程的定向抓取已经完成。

流程

整个系统的流程图如下:

抓取流程

系统模块

根据系统的流程将其分为七个模块:

  1. store:负责数据的存储,包括将页面储存到磁盘、获取下一个未分析的页面等。
  2. url_info:负责Url信息的转换,主要是根据Url提取域名和服务器的IP地址。
  3. url_index:判断Url是否已被抓取。
  4. url_filter:Url过滤器,用于实现定向抓取。
  5. http:负责根据Url抓取页面。
  6. page_parse:页面的解析,提取包含的Url。
  7. main:主程序。

以后会陆续介绍各个模块的实现。

开发环境

操作系统:Ubuntu 8.04

部署服务器:Ubuntu 8.04 Server

编译工具:gcc,make

IDE:Eclipse CDT 4.0.1

本文转自冬冬博客园博客,原文链接:http://www.cnblogs.com/yuandong/archive/2008/06/20/Web_Spider_Summary.html,如需转载请自行联系原作者

相关文章
|
机器学习/深度学习 运维 安全
图神经网络在欺诈检测与蛋白质功能预测中的应用概述
金融交易网络与蛋白质结构的共同特点是它们无法通过简单的欧几里得空间模型来准确描述,而是需要复杂的图结构来捕捉实体间的交互模式。传统深度学习方法在处理这类数据时效果不佳,图神经网络(GNNs)因此成为解决此类问题的关键技术。GNNs通过消息传递机制,能有效提取图结构中的深层特征,适用于欺诈检测和蛋白质功能预测等复杂网络建模任务。
524 2
图神经网络在欺诈检测与蛋白质功能预测中的应用概述
|
SQL 存储 安全
网络安全与信息安全概述####
本文探讨了网络安全(Cybersecurity)和信息安全(Information Security)的基本概念及其差异,重点介绍了网络安全漏洞、加密技术及安全意识在信息保护中的重要性。本文旨在通过深入分析这些关键技术和策略,提升对信息安全整体性的理解,帮助读者在数字化时代更好地应对信息安全挑战。 ####
|
机器学习/深度学习 存储 自然语言处理
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
深度学习入门:循环神经网络------RNN概述,词嵌入层,循环网络层及案例实践!(万字详解!)
|
数据采集 移动开发 Python
六:《智慧的网络爬虫》— 正则表达式概述
【8月更文挑战第7天】本文介绍了正则表达式的基本概念、用途,如表单验证和爬虫,以及Python中re模块的使用,包括match(),match()函数、元字符、预定义字符集、重复匹配、位置匹配、非贪婪模式和re模块的常用方法如compile(),search(),findall(),split(),sub()等。
336 1
六:《智慧的网络爬虫》— 正则表达式概述
|
数据采集 前端开发 开发者
《智慧的网络爬虫》— CSS概述
CSS主要作用是定义网页的样式。如网页元素的位置、大小、颜色等,也是前端及爬虫入门必须要学习的内容
152 7
《智慧的网络爬虫》—  CSS概述
|
数据采集 移动开发 前端开发
《智慧的网络爬虫》— HTML概述
网页是构成网站的基本元素,它是一个包含HTML标签的纯文本文件,通常是由图片;链接;视频;声音;文字等元素组成。通常我们所看到的网页,常以 .htm 或 .html 后缀结尾的文件,因此将其俗称为HTML文件。HTML;CSS;JS是学习爬虫的基础,是必须要了解的,此篇文章我讲述了HTML5对于爬虫所要必备的基础知识
166 1
《智慧的网络爬虫》—  HTML概述
|
机器学习/深度学习 PyTorch API
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
|
存储 NoSQL MongoDB
八:《智慧的网络爬虫》— MongoDB概述
【8月更文挑战第14天】本篇文章简单介绍了MongoDB的下载和安装以;其基本的操作语法,并附上每个语法的代码示例,为后续的爬虫学习打下基础
206 0
八:《智慧的网络爬虫》— MongoDB概述
|
SQL 数据采集 关系型数据库
七:《智慧的网络爬虫》— MySQL概述
【8月更文挑战第11天】本篇文章详细的介绍了MySQL数据库的安装与使用;并讲述了MySQL的基本操作及其应用语法
174 0
七:《智慧的网络爬虫》— MySQL概述

热门文章

最新文章