管理器、网页下载器、网页解析器、输出管理器这四个模块去搭建一个爬虫框架,将爬虫流程统一化,将通用的功能进行抽象,减少重复工作。要求实现的爬虫框架可以进行分布式爬取,解决爬虫的统一调度和统一去重,以及存储问题和速度问题。并提供多线程的下载,当CPU核数多的时候多线程下载可以更快的完成任务。最后使所要爬取的网站易于定制,因为很多站点的下载频率、浏览器
再将这个框架封装调用,对一个具体的网站进行测试。现成的开源第三方框架是为了尽可能满足大部分的需求,不可能做到面面俱到,以及第三方框架的调试相对复杂。为了提高效率可以专门封装一个框架,来快速方便得解决需求。
据CNNIC在京发布第48次《中国互联网络发展状况统计报告》显示,截至2021年6月,我国网民规模达10.11亿,30-39岁网民占比最高,达到20.3%;其次依次是40-49岁、20-29岁占比较高。据新浪小红书平台数据中心发布的《2020小红书平台用户发展报告》中,小红书平台2020年9月月活跃用户为5.11亿,9月日活跃用户为2.24亿。其中代际用户互动时段高峰区为上班路上、午休、晚饭前、睡前,午时(12:00)和亥时(22:00)是黄金冲浪时段,90、00后等社会年轻主体互动量最高。小红书平台用户加速年轻化,90、00后占比近80%,媒体及政务官微90后粉丝过半。并且现今社会中,90、00后大多数都接受过高等教育。由此可见小红书平台对社会的影响力非常高,小红书平台平台拥有大量的用户,每天产生海量的信息,挖掘潜在的价值与知识,正确利用这个移动媒体对社会、政企、商务策划与营销、舆论监督、个人都有很大的益处。数据挖掘方法能够找到海量数据中有潜在价值的知识与模式,使用数据分析的方法、借助数据挖掘工具去探索小红书平台用户的习惯、兴趣、偏好。
前端技术:nodejs+vue+elementui,
Express 框架于Node运行环境的Web框架,
语言 node.js
框架:Express
前端:Vue.js
数据库:mysql
数据库工具:Navicat
开发软件:VScode
视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。
代码结构讲解
1、 node_modules文件夹(有npn install产生)
这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
要求是不同的,所以这里所实现的爬虫框架要提供相应扩展的配置。爬虫框架的实现步骤:
(1)先通过URL管理器进行管理,将待爬取的URL和已经爬取的URL分别记录下来。
(2)再根据URL将网页进行下载,主要是进行相应的伪装处理模拟浏览器访问、下载网页。
(3)随后通过网页解释器解析、获取你想要的、感兴趣的内容。
(4)最后使用输出管理器从经过筛选的下载中获取到对应的值,然后转化成你想要的文件形式来对你所需要的内容进行输出。
目 录
摘 要 I
ABSTRACT II
目 录 II
第1章 绪论 1
1.1背景及意义 1
1.2 国内外研究概况 1
1.3 研究的内容 1
第2章 相关技术 3
2.1 nodejs简介 4
2.2 express框架介绍 6
2.4 MySQL数据库 4
第3章 系统分析 5
3.1 需求分析 5
3.2 系统可行性分析 5
3.2.1技术可行性:技术背景 5
3.2.2经济可行性 6
3.2.3操作可行性: 6
3.3 项目设计目标与原则 6
3.4系统流程分析 7
3.4.1操作流程 7
3.4.2添加信息流程 8
3.4.3删除信息流程 9
第4章 系统设计 11
4.1 系统体系结构 11
4.2开发流程设计系统 12
4.3 数据库设计原则 13
4.4 数据表 15
第5章 系统详细设计 19
5.1管理员功能模块 20
5.2用户功能模块 23
5.3前台功能模块 19
第6章 系统测试 25
6.1系统测试的目的 25
6.2系统测试方法 25
6.3功能测试 26
结 论 28
致 谢 29
参考文献 30