1. 立项背景和目标
1.1 立项背景
文旅行业数据量激增,景点信息分散杂乱,传统方式难以高效处理和分析。为实现旅游数据的自动化采集、深度分析与可视化应用,构建旅游大数据推荐系统,助力文旅数字化升级。
1.2 项目目标
完成携程景点数据爬取、分布式存储与清洗,构建分层数据仓库;
实现景点数据多维度分析,挖掘评分、热度、价格、地域分布规律;
开发数据可视化大屏,直观展示统计结果,支撑运营决策;
搭建后台管理系统,实现景点管理、数据仪表盘与精准推荐。
2. 软件功能、核心模块介绍
数据采集模块:Python 爬虫抓取携程全国景点数据,含 25 个关键字段,输出 CSV 文件。
大数据存储模块:搭建 Hadoop+Spark+Hive 集群,构建 ODS/DWD 分层数据仓库,实现数据分布式存储与管理。
数据清洗分析模块:PySpark+Hive SQL 完成数据清洗、去重、标准化;实现评分 / 价格 / 热度分档、区域统计、综合评分建模等多维度分析。
数据可视化模块:DataEase 制作数据大屏,生成柱状图、饼图、雷达图、地图等,直观呈现数据。
后台管理模块:基于若依框架开发,实现景点信息管理、数据仪表盘、图表接口开发与优质景点推荐。
3. 业务流程、功能路径
整体流程:数据采集 → 存储 → 清洗 → 分析 → 可视化 → 后台管理与推荐
采集:Python 爬虫爬取携程数据,导出 CSV。
存储:HDFS 上传数据,Hive 建库建表。
清洗分析:Spark 清洗数据,Hive SQL 多维度分析,结果存入 MySQL。
可视化:DataEase 连接 MySQL,设计并发布数据大屏。
后台:若依框架开发管理系统,实现数据展示、管理与推荐功能。
一、整体设计思路与技术栈
整体采用数据采集→存储→清洗分析→可视化→后台管理全链路架构,分层解耦、流程闭环。
数据采集:Python、requests、Cookie 反爬
大数据环境:Hadoop、Hive、Spark、MySQL
数据处理:PySpark、Hive SQL、数据分层建模
可视化:DataEase、ECharts
后台系统:若依 RuoYi-Vue、SpringBoot、Redis
二、本人负责模块与成果(量化)
本人主要负责数据采集、大数据环境搭建、数据清洗分析、数据迁移核心模块:
爬虫采集:用 Python 完成携程景点爬虫,突破反爬限制,成功抓取全国31 省市、35 页 / 城市共4.2 万条景点数据,涵盖 25 个关键字段,数据完整率98%。
大数据环境搭建:独立部署 Hadoop+Hive+Spark 集群,完成配置、格式化、服务启停,环境稳定性100%。
数据清洗分析:使用 PySpark+Hive SQL 完成去重、空值处理、格式标准化,清洗后有效数据4.1 万条;完成评分 / 价格 / 热度分档、区域统计、景区等级分析、综合评分模型,输出8 张分析表。
数据迁移:将 Hive 分析结果4.1 万条数据成功迁移至 MySQL,为可视化与后台提供稳定数据源。
三、遇到的难点及解决方案
难点一:携程反爬严格,频繁封禁请求
解决:配置浏览器请求头 + 有效 Cookie + 随机延时 1–10 秒,模拟真人访问,成功稳定爬取数据,无封禁。
难点二:Hive 建表后数据加载失败、中文乱码
解决:调整CSV 序列化格式、指定 UTF-8 编码、跳过表头,重新创建外部表,数据正常加载,乱码问题彻底解决。
难点三:Spark 连接 Hive 失败、依赖缺失
解决:复制hive-site.xml到 Spark 配置目录,添加MySQL 驱动包,配置环境变量,成功连接并查询 Hive 数据。