"景先生毕设|www.jxszl.com

携程网站旅游数据分析系统的开发(附件)【字数:8670】

2024-11-03 13:56编辑: www.jxszl.com景先生毕设
摘 要随着人们生活水平的提高,越来越多的旅游产品受到人们的青睐,但是市场上的旅游产品参差不齐,本研究将把携程网旅游数据(价格、旅游人次等)进行可视化,为人们提供最受欢迎的产品和最受欢迎产品的价格介绍,本文关键技术如下(1)数据爬取和持久化理解网站结构后,运用反爬技术,采用Requests库对网站发起请求;(2)数据清洗和标准化查看页面数据结构和分布,对关键数据进行提取;(3)数据分析和存储分析属性特点,将关键数据进行数据库保存;(4)数据结果动态显示基于Flask框架、EChart技术和数据库,调用数据库内容进行可视化。本课题结合大数据专业的多项技术,多角度分析携程网旅游数据,对将要进行旅游的市民提供帮助,具有较高的市场应用价值。
目 录
一、引言 1
(一)背景意义 1
(二)研究内容 1
二、关键技术介绍 2
(一)Requests库 2
(二)Re正则表达式 2
(三)XPath 2
(四)Navicat for MySQL 2
(五)Flask框架 3
(六)ECharts库 3
三、数据采集与存储 4
(一)结构分析 4
(二)数据获取 7
(三)数据存储 8
四、数据清洗 10
(一)数据浏览 10
(二)数据收集处理 10
(三)数据去空处理 11
(四)数据一致处理 12
(五)数据重复处理 13
五、数据分析 14
(一)描述分析 14
(二)数据排序 14
(三)相关分析 15
六、数据可视化 15
(一)可视化大屏界面 15
(二)可视化详细设计 16
七、总结和展望 24
八、致谢 25
参考文献 26
附录 各部分详细代码 27
引言
本课题为了针对目前市面上的旅游网站,对网站公开数据进行爬取、清洗,最后实现部分数据可视化,为人们在放假出游时做出热门省份的热门产品排名,为 *51今日免费论文网|www.51jrft.com +Q: ^351916072
人们出游提供参考方向。
本课题主要实现携程网站旅游数据的分析系统,完成携程网站旅游数据分析系统的开发,通过对网站公开数据的爬取,并使用Flask框架与Echarts技术相结合完成可视化操作。
(一)背景意义
随着中国经济的发展,人们的生活水平提高,不少人会在闲暇时间选择出游。但是每个省份的旅游产品种类繁多,热门旅游产品中的价格也是层次不齐的,导致人们在挑选旅游场地和思考预算时没有足够的依据,从而使人们到达旅游场地的时候并不满意,浪费了时间。
目前国内还没有针对携程网站中所有省份的热门旅游产品旅游人次和价格进行可视化操作,本文将重点通过对携程旅游网站中的公开数据的采集、存储、清洗、分析、可视化呈现出热门旅游省份、每个省份平均出游价格和每个省份近期具体出游人数,来提高市民选择旅游产品的能力。
研究内容
本文将对携程旅游网站的公开数据进行爬取,在爬取的过程中利用Re正则表达式和XPath等技术,同时对数据进行分析、格式化及清洗,并且将数据保存至数据库再次分析,通过去重分析后得到需要的数据,在ECharts官网上寻找合适的模板,通过对模板的改进,并且匹配数据格式,将多个ECharts图表嵌入Flask框架中,使用Flask中app.route路由功能将ECharts图表链接到HTML页面中的各个位置,最终形成可视化大屏。
本文采用Requests请求,通过UA伪装,首先获取携程旅游网站各省份产品的id信息,其次,爬取产品页面信息,通过分析确定需要采集的数据,使用xpath通过元素和属性进行导航。最后通过循环请求,翻页采集所有省份产品信息,通过Re正则表达式,提取出所需要的数据,并且对数据格式化,再一步进行清洗,通过SQL数据库进行保存,采用Flask框架、ECharts图表、数据库,通过自定义SQL语句对数据库存储数据的调用,完成ECharts图表中的数据填充,将ECharts图表链接到HTML页面中的各个位置,完成数据可视化。
数据采集部分包括:反爬技术、Requests库、Re库、XPath函数等;
数据存储部分包括:MySQL、Navicat for MySQL;
数据清洗部分包括:Re库、数据库distinct语句;
可视化部分包括:Flask框架、ECharts图表和数据库。
关键技术介绍
本文涉及数据采集、清洗、分析、可视化等大数据的技术,采用Flask等框架或软件,下面进行详细介绍。
(一)Requests库
Requests 是用Python语言编写,在 urllib的基础上,使用 Apache2 Licensed 开源协议的 HTTP 库。它比 urllib 要方便,可以节省我们大量的工作,完全满足 HTTP 测试要求。
Requests 使用 Apache2 Licensed 许可证,使用Python开发的HTTP 库,它在Python内置模块的基础上进行了封装,从而使得程序员在进行网络请求时,变得便利了许多,使用Requests可以十分容易的完成浏览器可以进行的所有操作,例如GET请求、POST请求等其他请求。
本文使用Requests函数库对携程旅游网网站进行GET和POST请求,分别获得网页页面数据和公开的网页请求数据。
(二)Re正则表达式
正则表达式。(英语:Regular Expression,在代码中常写为regex、regexp或RE),几乎所有编程语言都有对正则表达式的支持和应用。
本文主要针对Python中的Re正则表达式函数库进行使用,Re正则表达式经常用来检索、更替那些符合某个格式(规则)的文本。在本文中,通过Re正则表达式函数库,能够轻易将隐藏在页面中的产品数据进行提取,并且提取的同时可以使用Python自带的String格式文本.replace函数进行格式化操作。

原文链接:http://www.jxszl.com/jsj/wlw/607590.html