官方接单发单平台上线!有接单发单需求的请直接发布需求,或注册接单!点击此处查看详情!

Java结课项目大作业 旅游网站大数据分析

时间:2024-10-11 浏览:72 分类:毕业设计/课程设计

91代做网-专注各种程序代做

包括但不限于:各类毕设课设、作业辅导、代码答疑、报告论文、商业程序开发、论文复现和小程序开发等。

也欢迎各行业程序员加入我们,具体请联系客服详聊:QQ号:,微信号:,接单Q群:

3.旅游网站大数据分析

【问题描述】

本项目从网络爬虫入手,获取旅游网站数据,结合Hadoop、HBase 核心技术搭建一个旅

游大数据的分析系统,项目共有六个步骤,分别为: 数据获取、数据清洗、数据存储、数据

分析、 数据可视化和数据挖掘。

【要求】

(1)数据获取:利用 Jsoup 技术抓取 携程旅游网 的数据;

(2)数据清洗:清洗 HTML 文档中无意义数据;

(3)数据存储:将酒店和城市数据存储到 Hbase;

(4)数据分析:各城市的宾馆平均价格对比,统计酒店评论中词频较高的词,

(5)数据可视化:制作可视化大屏

【实现提示】

(1)Java 中支持的爬虫框架有很多,比如WebMagic、Spider、Jsoup 等;

(2)数据清洗从名字上也看的出就是把“脏”的“洗掉”,包括检查数据一致性,处理无效值和缺失值等。使用 Jsoup 获取到的是整个页面的资源,其中包含了Html的代码也就会包含了无意义的数据,我们就需将它进行清洗。

使用 BI 工具实现可视化大屏

以下是每个步骤的具体实现方法:

数据获取: 使用Jsoup技术抓取携程旅游网的数据。Jsoup是一个强大的Java库,可以用来解析和操作HTML文档。您可以通过以下方式使用Jsoup来获取网页数据:

javaDocument document = Jsoup.connect("携程旅游网的URL").get();Elements elements = document.select("您的选择器");

其中,“您的选择器”应根据您需要抓取的数据的HTML结构来确定。例如,如果您想抓取所有的酒店链接,您可能会使用a[href]作为选择器。

数据清洗: 清洗HTML文档中的无意义数据。这通常涉及到去除脚本、样式、无关的HTML注释和空白节点等。Jsoup提供了多种方法来实现这一点,例如outputSettings(new DocumentOutputSettings().prettyPrint(false))可以去除空白字符,而select("script").remove()可以移除所有的<script>标签。

数据存储: 将清洗后的数据存储到HBase中。HBase是一个分布式的、可扩展的大数据存储系统,它建立在Hadoop文件系统(HDFS)之上,提供对大规模数据集的随机实时读/写访问。您需要定义合适的列族和列,然后使用HBase的API将数据插入到表中。例如:

javaConfiguration config = HBaseConfiguration.create();try (Connection connection = ConnectionFactory.createConnection(config);
    Table table = connection.getTable(TableName.valueOf("您的表名"))) {
 Put put = new Put(Bytes.toBytes("rowkey"));
 put.addColumn(Bytes.toBytes("列族"), Bytes.toBytes("列"), Bytes.toBytes("值"));
 table.put(put);}

您需要根据您的数据结构来设计rowkey、列族和列。

数据分析: 对存储在HBase中的数据进行分析。这可能涉及到使用MapReduce来处理数据,比如统计每个城市的宾馆平均价格。您需要编写一个MapReduce程序,其中Mapper会从HBase读取数据,Reducer会进行实际的计算。

数据可视化: 制作可视化大屏。您可以使用BI工具如Power BI来实现这一点。Power BI提供了丰富的可视化组件,如图表、表格、切片器等,可以帮助您将数据转化为有意义的洞察。您可以通过配置API动态数据来实现数据的实时展示。

数据挖掘: 对酒店评论进行词频统计和分析。您可以使用Python的jieba库来进行中文分词和词性标注,然后进行词频统计。这可以帮助您了解客户对酒店的普遍看法和意见。


客服