软著说明书(范本1)

项目名称:基于互联网大数据的事件智能抓取和画像系统项目成员:禹精华、刘可可、刘贤辉

对基于互联网大数据的事件智能抓取和画像系统进行算法描述和软件设计说明。

项目背景:随着互联网大数据的发展,各种大数据的分析对各行业都产生了不同程度的影响。网站数据、社交媒体数据等是互联网大数据的重要组成部分。对于民航业领域,社会事件的发生,会很大程度影响旅客的出行需求变化,从而影响航空公司飞机运力投放、航班编排、票价策略调整等,对互联网事件的准确抓取和分析能够帮助航空公司更好的服务市场、服务旅客、提升收益。

行业背景:对于航空公司来说,能否预先判断旅客的出行需求,可用于航空公司及行业管理部门决定行业运力投放的合理性,从而提高旅客服务水平、提高航空公司航班收益水平,从互联网中获取大量的影响民航领域的信息能够帮助航空公司制定销售策略。

1.3项目概要

开发团队:武汉职业技术学院筑梦云工作室demo01团队

项目开发平台说明:

操作系统:Windows7及以上版本

应用服务器:UbuntuServer14.04LTS64位

服务器配置:CUP:1核内存:1GB公网带宽:1Mbps硬盘:20G

应用服务器:WindowsServers2008

服务器配置:CUP:1核内存:2GB公网带宽:1Mbps硬盘:40G

网络架构:完全支持TCP/IP协议

开发工具或技术体系:开发语言:Python3.6,开发工具:Pycharm2017

数据库:MongoDB3.4.3

软件运行环境说明:

设备:

客户程序硬件要求:

具有1核处理器且满足以下要求的计算机:

最低1G内存

最小20GB硬盘

web服务器硬件需求:

总线I/O:8M/s;

数据库服务器硬件需求:

从互联网上抓取事件,对事件数据进行数据处理,存储到数据库,进行分词及语义等处理,提取事件的属性建立事件模型,以及可视化展现。

1、实现互联网事件天级或更高频次抓取,采集政治会议、展会、体育赛事、演唱会、突发异常天气等各类中比较主要的事件,每个类型的事件数据至少来自2个数据源(网站),每天爬取一次。

2、实现事件的去重功能,一是不同数据源(网站)的事件去重,二是不同天抓取的事件去重。

3、事件画像建模,即事件属性自动化提取。

4、使用DataV进行可视化展现。

1、网络爬虫模块实现互联网事件抓取。

2、日志模块实现各个模块间日志的生成。

3、数据处理模块实现数据的准备、清洗、去重、转换。

4、数据建模模块对数据建立模型,计算及转换。

5、事件画像模块对事件分词及提取属性。

6、DataV进行可视化展示。

系统需求分析:为航空公司飞机的运力投放、航班编制、票价策略提供服务。

软件系统结构描述:基于互联网大数据的事件智能抓取和画像系统由爬虫模块、日志模块、数据处理模块、数据建模模块、事件画像模块、可视化系统构成。

软件结构如图3-1:

图3-1系统总用例图

数据流程如图3-2:

图3-2数据流程

软件系统采用B/S架构,并且将程序部署在云服务器。

3.2.2基本设计概念和处理流程

考虑到互联网上的数据复杂性非常高、并且事件数据一般为非结构化数据,其处理和分析有一定的难度,对爬虫的稳定性和爬取速度有很大的要求,我们使用scrapy爬虫框架技术来从各网站爬取数据,对数据进行处理,使用NoSQL型数据库MongoDB存储半结构化数据,对数据画像、分析、建模并且将程序部署在云端。通过访问云端数据库,数据流映射到DataV实现可视化展示。

系统流程如图3-2-2:

图3-2-2系统流程图

设计说明:

1、每一个计算机需要不需要安装客户程序,但是需要有IE4.0或更高版本的支持;

2、WEB发布服务器访问数据库服务器,数据库服务器对外部不可见;

3、数据库服务器使用MongoDB来实现,对于目前的访问量,MongoDB在足够的硬件环境的支持下能够适用,并且在经济上也是合理的;

4、多用户并发访问和处理、数据加锁、事务协调,由MongoDB数据库来完成,本系统不提供单独的事务处理服务器;

5、scrapy爬虫框架可以实现快速、高并发、高层次的网络抓取。

应用程序采用Python语言进行开发,网络爬虫使用scrapy框架进行开发并将其部署在云服务器上,考虑到爬虫抓取的数据多为半结构化或者非结构化数据,我们使用NoSQL型数据库MongoDB进行数据存储,并部署在云服务器上。

系统设计如图3-3-1:

图3-3-1系统设计图

整个系统共划分为6个模块

1、爬虫模块

2、日志模块

3、数据处理

4、数据建模

5、事件画像

6、可视化展示

系统模块设计如下:

1、爬虫模块分为定时爬虫模块和scrapy爬虫两个模块构成。

定时爬虫模块:管理整个爬虫模块,监控爬虫运行状态、设置爬虫抓取频率(每天爬取一次)、爬虫程序异常处理、管理爬虫日志。

Scrapy爬虫模块:从目标网站上抓取数据,采集政治会议、展会、体育赛事、演唱会、突发异常天气、交通管制新闻网等数据源网站的事件经过数据处理,并生成爬虫日志存储到数据库。此模块由11个爬虫脚本组成,分别对相应的数据源进行数据爬取。

爬虫模块如图3-3-2:

图3-3-2爬虫模块图

2、日志模块:日志模块与系统各个模块部分联系紧密,各个模块运行都会产生日志,生成的日志将存储到数据库,方便系统管理、维护、排错。

日志设计图如图3-3-3:

图3-3-3日志模块设计图

3、数据处理:数据处理分为数据准备、数据转换、数据聚合。主要对非结构化/半结构化数据进行处理,得到干净、规整的数据。爬虫爬取网站数据源的时候进行数据预处理,对所收集数据进行审核、筛选、排序等操作。数据预处理完成后对数据进行清洗,过滤掉不符合要求的数据,将脏数据转化为满足要求的数据。再进行缺失值处理,对缺失项进行特殊值填充,存储到数据库。数据去重主要对不同网站的事件数据去重复处理。

4、数据建模:对事件数据建立一个统一的模型,利用聚类等机器学习算法挖掘数据间隐藏的属性及关系。由聚类算法和搜索引擎收录数两个子模块构成。

聚类算法:使用无监督学习的K-Means对数据进行聚类分析。

5、事件画像:事件画像模块实现了对事件属性的自动化提取。调用数据建模模块对数据进行聚类,对不同类型的事件进行分词及属性提取,数据样本初始化,日志生成,对事件画像,生成事件样本。

事件属性表如下:

6、可视化展示我们使用阿里云的可视化工具DataV来生成图表和数字大屏。

定时爬虫模块设计如图3.3.3:

图3.3.3定时爬虫模块

程序定时及爬虫管理脚本TimerAdmins.py

scrapy爬虫模块设计如图3.3.4:

图3.3.4Scrapy爬虫模块类和接口设计

日志模块设计如图3.3.4:

图3.3.4日志接口类图

算法及源码设计如下:

3.3.5数据处理

数据处理脚本文件ToHeavy.py

数据去重设计如图3.3.5:

图3.3.5数据去重接口和类图

数据去重算法说明:根据表名查询数据库对应的表,获取该条事件过去三天所有数据,对事件名分词,如果事件名与过去三天的事件记录相似度超过65%,标记为重复数据,flag赋值为0。

3.3.6数据建模

3.3.6.1聚类算法

数据建模说明:我们采用机器学习算法的无监督学习算法,对原始数据建立分类模型,使用聚类分析算法来对数据进行建模。

中国会展门户数据如图3.3.6.1:

图3.3.6.1中国会展门户数据图

K-Means聚类算法说明:在具体的聚类算法中我们采用K-Means聚类算法,对数据建模,将事件热度分为三类,既聚类热度级别为1、2、3。K-Means算法是基于距离的非层次聚类算法,在最小化误差函数的基础上将数据划分为预定的类数K,采用距离作为相似性的评价指标,既认为两个对象的距离越近,相似度就越大。度量样本之间的相似性使用的是欧氏距离,公式如图3.3.6.2:

图3.3.6.2欧氏距离公式图

具体算法描述如图3.3.6.3:

图3.3.6.3算法描述

聚类算法流程如图3.3.6.4:

图3.3.6.4聚类算法流程图

建模程序设计及算法说明:KMeans.py聚类算法文件。

聚类算法设计接口如图3.3.6.5:

图3.3.6.5聚类算法设计接口和类图

K-Means聚类算法设计源码如下:

聚类完成后,根据事件的主办方级别、主办方类型及影响范围属性对聚类热度进行加权,得到热度属性。

3.3.6.2搜索引擎收录数

获取搜索引擎收录数文件:GetSearchEngineResult.py

3.3.7事件画像

3.3.7.1事件画像系统设计

事件画像系统集成了事件画像管理脚本、数据样本初始化、事件样本输出、数据建模、事件画像等功能。事件画像系统调用数据建模模块,提取各类事件的属性,生成事件样本。事件画像系统设计如图3.3.7.1:

图3.3.7.1事件画像系统设计图

3.3.7.2事件画像

事件画像模块的主要类是实体类、数据访问接口和功能类。

实体类保存了事件的基本属性数据,访问接口连接数据库,功能类对事件提取属性。

事件画像设计及接口类如图3.3.7.2:

图3.3.7.2事件画像模块接口和类图

我们使用阿里的DataV做可视化展示,通过DataV建立云端数据库的连接,实现数据流映射到DataV。从而生成数据大屏。

可视化展示预览图如图3.3.8:

图3.3.8数据大屏

考虑到程序的稳定性和团队协同工作等特性,我们将数据库部署在云服务器,实现了实时访问、高性能、高扩展性等特点。

数据库软件:MongoDB建立的数据库名称:Spider、Config、DataV、Log存储爬虫抓取的数据:Spider系统配置数据库:Config存储可视化展示数据的库:DataV存储日志数据:Log

将对数据库的操作封装为一个模块。各个模块都要进行数据的存储,将数据的存储单独划分出来做成一个模块的好处是显而易见的,实现了系统模块间的弱耦合,方便数据的写入、读取等操作。

****ConnectMongoDB.py功能:连接mongodb数据库

连接数据库接口源码:

OperatingDB.py功能:封装了对数据库的操作,创建表\集合、插入数据、删除数据、查询数据、关闭数据库连接。

3.4.3数据库结构

由于NoSQL型数据库不同于传统的关系型数据库,在建立表结构、索引这些操作时没有像关系型的关联、约束等关系。结构设计也相对简单。

数据库设计如下表

MongoDB将数据存储为一个文档/表,数据结构由键值(key=>value)对组成。MongoDB文档/表类似于JSON对象。数据库各个表字段设计如下。

数据库:Spider

表名:CityWeather

表名:DamaiConcert、JuchengConcert、YongleConcert

表名:DamaiSports

表名:Longitudes

表名:WaringWeather

表名:XishiquConcert、XishiquSports

表名:YongleSports

表名:cnena

表名:eshow

表名:people

表名:trafficcontrol

表名:xinhuanet

数据库:Config

表名:timer

数据库:Log

表名:CityWeather、ConcertAttr、CrawlAdmin、DaMaiPW、EventPortrait、EventPortraitAdmin、

ExhibitionAttr、JuChenSpider、SportAttr、TimerAdmin、WarngingCrawl、XishiquConcert、XishiquSports、people、xinhuanet、yonglePW。

THE END
1.网站架构规划:构建一个成功网站的基石(网站架构规划方案)网站架构规划是网站发展的关键步骤,它为网站的成功奠定基础。精心规划的网站架构可以提升用户在规划网站架构时考虑SEO至关重要。优化页面标题、元描述和内容以提高网站在搜索结果中的可见度。 网站架构的最佳实践 以下是一些网站架构的最佳实践: 保持网站结构简单易懂。 https://www.ulidc.com/2024/12/17/%E7%BD%91%E7%AB%99%E6%9E%B6%E6%9E%84%E8%A7%84%E5%88%92%EF%BC%9A%E6%9E%84%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%88%90%E5%8A%9F%E7%BD%91%E7%AB%99%E7%9A%84%E5%9F%BA%E7%9F%B3-%E7%BD%91%E7%AB%99%E6%9E%B6%E6%9E%84/
2.网站结构设计包含哪些内容如何设计网站架构→MAIGOO知识摘要:我们在进行页面布局的时候,一定要考虑到这个页面布局的是哪些关键词,做好相关文章,相关推荐、相关频道页的设计;这样我们网站整体的结构设计及结构优化才更趋于合理,才能更加满足用户的需求。那么,网站结构设计包含哪些内容,如何设计网站架构呢?下面一起来看看吧! https://m.maigoo.com/goomai/219343.html
3.常见网站结构网站架构这种情况下,更恰当的做法是增加一台服务器分担原有服务器的访问及存储压力。 对网站架构而言,只要能通过增加一台服务器的方式改善负载压力,就可以以同样的方式持续增加服务器不断改善系统性能,从而实现系统的可伸缩性。应用服务器实现集群是网站可伸缩架构设计中较为简单成熟的一种,如下图所示:https://blog.csdn.net/qq_63926306/article/details/135734494
4.网站架构设计数据流图网站系统架构模型网站架构设计 数据流图 网站系统架构模型 模式:关键在于模式的可重复性,问题与场景的可重复性带来解决方案的可重复使用。 大型互联网公司在实践中提出了许多解决方案,以实现网站高性能、高可用、易伸缩、可扩展、安全等各种技术架构目标。 这些解决方案又被更多网站重复使用,从而逐渐形成大型网站架构模式。https://blog.51cto.com/u_16099300/10553662
5.网页布局完全指南从入门到实践:页头区域,通常包含网站标志、主导航等 :导航区域 :主要内容区域 :独立的内容区块 :辅助内容,如侧边栏 :页脚区域 :内容分区 三、常见布局方式 3.1 传统布局方式 3.1.1 文档流布局 最基本的布局方式,元素按照自上而下、从左到右的顺序排列。 .container { width: 1200px; margin: 0 auto; } .headerhttps://htmlpage.cn/about-html/complete-guide-to-web-layout-from-getting-started-to-practice.html
6.网站基本架构设计的主要步骤/上海网站建设开发公司网站基本架构设计的主要步骤,上海网站建设开发公司,做flash网站的软件,北京室内设计师电话这是我看过这个问题最完整/优质的回答了,转来分享 知乎的排版不太好,可以浏览博客原文:http://gaoxiang.ga/index.php/archives/36/?gaoxiang.ga前言见解有限,如有描述不当之处,请帮忙指出,如有错误 … http://www.mhkc.cn/news/664885.html
7.网站基本架构设计的主要步骤/seo整合营销网站基本架构设计的主要步骤,seo整合营销,西安企业网站开发,网站运营者网址游戏服务器高可用负载均衡 内容精选换一换共享型负载均衡不支持,必须是华为云后端服务器。点击了解更多后端服务器介绍相关内容。独享型负载均衡实例支持混合负载均衡的能力,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其… http://www.fpmy.cn/news/9955.html
8.网站设计基本信息标记 文字设置 表格设置 图片设置 背景声音设置 视频设置 超级链接设置 框架设置 CSS层叠样式表 JS特效使用 版式配色 6注意事项 常犯错误 网站优化 用户体验 7网站设计思路 架构 风格 信息排布 视觉顺序 8如何突破 1基础定义编辑 简单来说,网站设计的目的就是产生网站。简单的信息如文字,图片(GIFs, JPEGshttps://baike.sogou.com/v297911.htm
9.网站设计方案(通用17篇)5、学校安排一名校领导(胡良校长)担任我校网站信息审核员,审核员要经常进行管理,发现不适合发布的信息“取消审核”,并通知网管进行删除。 四、站务管理规定 1、信息教师全面提供学校网站的建设与管理,系统构思、设计网站的架构,配合各部门及时、准确地将学校重大工作(活动)入网,为师生提供校园信息。 https://www.ruiwen.com/shejifangan/7234563.html
10.最全阿里架构师技能:算法+多线程+性能调优+框架+高并发架构设计六:设计模式 设计模式基本是代码的重构能力,避免重复造轮子,常见的创建型、结构型等模式需要掌握。 七:大型网站技术架构设计 工程拆分原则 数据库拆分原则 分布式缓存选型 消息队列选型与评估 单点登录的原理和设计 微服务架构 分库分表读写分离 性能调优原则 https://maimai.cn/article/detail?fid=1707490030&efid=CEg5KrVVZRUszZk6p5IYqw
11.网站建设策划书(通用18篇)2)策划部根据调查结果向企业领导提出建立网站的初步方案,确定网上形象表现基本方式,信息流结构,网站宣传策略。 3)策划部根据网站建设方案向企业提交材料清单,由企业进行准备并交给策划部,为设计和制作做准备。 4)有网站设计专业人员根据网站模型和材料对网站进行总体设计,包括企业网上形象设计,网站结构和布局,关键词的设https://www.unjs.com/fanwenku/430944.html
12.交互设计基础:互联网产品的基本信息架构–Axure中文学习网一个网站/软件到底需要多少张页面,我觉得是“3×n”张。3个基本页面。信息架构从某种程度上讲,是对这三种页面的排列组合。1、着陆/导航页2、消费页3、交互页 一个网站/软件到底需要多少张页面,我觉得是“3×n”张。 3个基本页面 信息架构从某种程度上讲,是对这三种页面的排列组合。 https://www.axure.com.cn/740/
13.咸阳市人民政府第三章?架构设计 一、总体架构 遵循陕西省数字政府总体框架,立足咸阳数字政府发展基础,按照“363”的建设思路统筹推进咸阳市数字政府建设,即:“三大基础支撑、六大创新应用、三大运行保障”。 图1.?咸阳市数字政府建设总体架构 (一)三大基础支撑 按照整合集约、统建共享原则,建设完善基础设施体系、数据资源体系和应https://xianyang.gov.cn/zfxxgk/fdzdgknr/ghxx/202207/t20220722_934697.html
14.大型网站演变全过程与架构设计详解–mikechen大型网站的架构演化到这里,基本上大多数的技术问题都得以解决,诸如跨数据中心的实时数据同步和具体网站业务相关的问题也都可以通过组合改进现有技术架构解决。 陈睿mikechen 10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。 关注「mikechen」公众号,获取更多技术干货! https://youzhixueyuan.com/large-website-architecture-design.html
15.网络中心当今社会,以互联网、大数据、云计算、物联网、人工智能、5G、VR/AR、区块链等信息技术为代表的科技革命对人类生活、工作、学习等各个方面产生了巨大的影响,在教育领域数字校园已成为办学的基本条件,特别是职业院校数字校园已成为支撑教育教学、沟通校企合作、促进师生发展的必需环境。 http://www.xtzy.com/wlzx/detail.jsp?public_id=153330
16.Web信息架构——设计大型网站(第3版)第3章:用户需求及其行为 本章为信息架构设计设定舞台,可以帮我们了解人们如何与信息交互。 第一优先考虑:他们需要信息,用户想要什么? 完美的捕捉:找正确的答案 捕捉龙虾的陷阱:答案不止一个,无论是什么都是有用的 乱撒网:到处闲逛 第2部分:信息架构基本原理。讨论信息架构的基本组件,举例说明这些系统之间的相互关系https://www.jianshu.com/p/229e5af5ff33
17.由浅至深推荐进阶java书籍(附PDF下载)作者是蘑菇街技术副总曾宪杰,曾长期负责淘宝主站。通过这本书可以了解大型网站架构变迁过程中的较为通用的问题和解法,并了解构建支撑大型网站的 Java 中间件的实践经验。 对于有一定网站开发、设计经验,并想了解大型网站架构和支撑这种架构的系统的开发、测试等的相关工程人员,本书有很大的参考意义;对于没有网站开发设计https://www.w3cschool.cn/java/java-book.html
18.电子商务专业实训报告11篇网站架构,是根据客户需求分析的结果,准确定位网站目标群体,设定网站整体架构,规划、设计网站栏目及其内容,制定网站开发流程及顺序,以最大限度地进行高效资源分配与管理的设计。其内容有程序架构,呈现架构,和信息架构三种表现。而步骤主要分为硬架构和软架构两步程序。网络架构是现代网络学习和发展的一个必须的基础技术。https://www.wenshubang.com/baogao/3497362.html
19.《亿级流量网站架构核心技术》概要《亿级流量网站架构核心技术本书暂定名称为《亿级流量网站架构核心技术——跟开涛学搭建高可用高并发系统》,如有好的书名建议欢迎留言,必当重谢。内容已交由出版社编辑,相信很快就会和大家见面。主要内容结构和目录如下所示: 第一部分概述 高并发原则 无状态 拆分 服务化 消息队列 https://cloud.tencent.com/developer/article/1492718
20.大型网站架构设计大型网站架构设计 简介 大型网站架构设计是非常复杂的事情,一个近千万用户的网站自然在各个方面与传统的网站有着必然的区别。工具/原料 网站架构 程序 方法/步骤 1 网站静态。一个每天有着数千页面的网站也要实现静态化的页面,这只有依托一些程序来自动实现了,人工完成这样的工作是几乎不可能的。2 系统架构。一https://jingyan.baidu.com/article/d5a880ebb9f00313f047cc53.html