本書通過大型旅游數(shù)據分析項目的開發(fā)案例,全面展示了使用Python進行旅游數(shù)據分析的過程和實踐。全書共9章。第1章介紹了大數(shù)據的概念、發(fā)展及主要技術,第2章介紹了Python的基礎知識,第3章介紹了網絡公開數(shù)據的采集方法,第4章介紹了數(shù)據解析方法,第5章介紹了數(shù)據存取方法,第6章介紹了數(shù)據處理與分析方法,第7章介紹了數(shù)據可視化方法,第8章設計了兩個旅游大數(shù)據綜合案例,第9章總結了本書的相關研究。 本書以Windows和PyCharm為平臺,完整地對數(shù)據分析過程進行系統(tǒng)論述,并介紹各個模塊所需要的基本技術及應用。書中所有知識點均給出了實例代碼,并全部通過了程序驗證。 本書可作為智慧旅游專業(yè)及相關專業(yè)的教學用書,也可作為感興趣讀者的自學讀物,還可供使用Python進行旅游大數(shù)據分析的旅游從業(yè)者參考。
黨的二十大報告指出:教育、科技、人才是全面建設社會主義現(xiàn)代化國家的基礎性、戰(zhàn)略性支撐。必須堅持科技是第一生產力、人才是第一資源、創(chuàng)新是第一動力,深入實施科教興國戰(zhàn)略、人才強國戰(zhàn)略、創(chuàng)新驅動發(fā)展戰(zhàn)略,這三大戰(zhàn)略共同服務于創(chuàng)新型國家的建設。高等教育與經濟社會發(fā)展緊密相連,對促進就業(yè)創(chuàng)業(yè)、助力經濟社會發(fā)展、增進人民福祉具有重要意義。
在當今大數(shù)據時代,數(shù)字經濟的快速發(fā)展使得各行各業(yè)處于數(shù)字化轉型的快速發(fā)展時期,數(shù)字信息更是以大量高速的狀態(tài)不斷增長。旅游產業(yè)作為一個對社會信息變化高度敏感的行業(yè),對高質量數(shù)據分析的需求也逐漸增多。
2023年,全國文化和旅游產業(yè)發(fā)展工作會議指出,當前我國人民群眾對文化和旅游產品供給提出了更高的要求,要認真研判產業(yè)發(fā)展面臨的新形勢、新變化,準確把握產業(yè)發(fā)展重點工作方向,進一步發(fā)揮文化和旅游消費在穩(wěn)增長、擴內需中的重要作用。
旅游大數(shù)據分析可以幫助旅游部門分析相關數(shù)據,在此基礎上做好公共管理服務,提升旅游業(yè)管理決策能力; 可以幫助旅游景區(qū)進行游客分析、數(shù)據挖掘,有效指導景區(qū)的運營發(fā)展; 能幫助旅游企業(yè)查找不足,為游客定制個性化的旅游服務,提高旅游服務質量; 能幫助旅游企業(yè)進行市場分析、客戶需求分析,更新營銷策略并做好旅游經營策略管理,提高旅游市場判斷力,從而推動整個旅游產業(yè)的發(fā)展。由此可見,旅游大數(shù)據分析對旅游業(yè)的發(fā)展至關重要。
Python是一門輕量級的數(shù)據分析語言,它靈活、輕便,可以與各行各業(yè)相結合,從而極大地提高人們的工作效率。將Python應用在旅游大數(shù)據分析中,即對旅游數(shù)據進行合法抓取并存儲,結合實際需求對數(shù)據進行分析,再以可視化的角度進行呈現(xiàn)。 Python旅游大數(shù)據分析是一門新的交叉學科應用領域,迫切需要對此進行系統(tǒng)論述。
本書以Windows和PyCharm為平臺,完整地對網絡數(shù)據采集數(shù)據解析數(shù)據存取數(shù)據處理分析數(shù)據可視化的數(shù)據分析過程進行系統(tǒng)論述,并介紹各個板塊所需要的基本技術; 以旅游數(shù)據分析為案例進行實踐開發(fā),以兩個大型旅游數(shù)據分析項目的開發(fā)為例,完整展示了Python旅游數(shù)據分析的過程和實踐。
全書共9章。第1章介紹了大數(shù)據的概念、發(fā)展及主要技術,第2章介紹了Python的基礎知識,第3章介紹了網絡公開數(shù)據的采集方法,第4章介紹了數(shù)據解析方法,第5章介紹了數(shù)據存取方法,第6章介紹了數(shù)據處理與分析方法,第7章介紹了數(shù)據可視化方法,第8章設計了兩個旅游大數(shù)據綜合案例,第9章總結了本書的相關研究。
本書對攜程網、12306、去哪兒網等進行數(shù)據采集,僅用于學習交流,不作為商業(yè)用途,不宜頻繁采集,以免影響網站運行。書中所有實驗均通過測試,但仍然可能會出現(xiàn)網站結構升級導致程序不能正常運行的情況,請讀者知悉。
為便于學習和理解,本書提供軟件安裝包、程序源碼等資源,可在目錄上方的資源下載二維碼中獲取。
本書的出版基于以下項目的研究成果: 重慶旅游職業(yè)學院2022年校級課題(xj2223)、重慶旅游職業(yè)學院2023年教學質量與教學改革工程建設項目(YJKG2023001)、重慶市2023年科學技術研究計劃項目(KJQN202304604)。
由于作者水平有限,書中錯漏在所難免,敬請讀者批評指正。
作者2023年7月
第1章大數(shù)據
1.1什么是數(shù)據
1.2數(shù)據的管理
1.3大數(shù)據的概念
1.4大數(shù)據的發(fā)展
1.5大數(shù)據的特點
1.6大數(shù)據的主要技術
1.7大數(shù)據的應用
第2章Python語言基礎
2.1程序設計語言
2.1.1程序設計語言的發(fā)展
2.1.2常用的程序設計語言
2.2Python開發(fā)環(huán)境配置
2.2.1Python的安裝
2.2.2PyCharm的安裝
2.3基本語法
2.3.1編寫風格
2.3.2注釋方式
2.3.3數(shù)據類型
2.3.4表達式
2.4程序結構
2.4.1選擇結構
2.4.2循環(huán)結構
2.4.3異常處理
2.5函數(shù)與模塊
2.5.1函數(shù)
2.5.2模塊
2.6序列數(shù)據
2.6.1字符串
2.6.2列表
2.6.3元組
2.6.4字典
2.7面向對象
2.7.1面向對象的概念
2.7.2Python面向對象編程
2.8文件操作
2.8.1打開、讀取文件
2.8.2關閉文件
2.8.3寫文件
2.8.4讀文件的N個字符
2.8.5讀文件的一行或多行字符
2.8.6不同編碼
2.8.7用指針改變讀寫位置
第3章數(shù)據采集
3.1爬蟲概述
3.1.1爬蟲的基本概念
3.1.2爬蟲的合法性
3.2網頁與爬蟲
3.2.1URL
3.2.2認識網頁結構
3.2.3爬蟲實現(xiàn)過程
3.3Requests庫
3.3.1Requests庫的安裝
3.3.2Requests庫的功能介紹
3.3.3用Requests爬取旅游網站數(shù)據
3.4Selenium抓取動態(tài)頁面
3.4.1Selenium概述
3.4.2Selenium的安裝
3.4.3Selenium的基本用法
3.4.4用Selenium爬取旅游網站數(shù)據
第4章數(shù)據解析
4.1數(shù)據解析技術
4.2正則表達式
4.3XPath
4.3.1XPath概述
4.3.2lxml庫
4.3.3應用案例
4.4Beautiful Soup
4.4.1Beautiful Soup概述
4.4.2構建與輸出
4.4.3遍歷文檔樹
4.4.4搜索文檔樹
4.4.5應用案例
4.5綜合爬取案例
第5章數(shù)據存取
5.1JSON
5.1.1JSON概述
5.1.2用JSON庫存取JSON文件
5.1.3用Pandas庫存取JSON文件
5.2CSV存取
5.2.1用CSV庫存取CSV文件
5.2.2用Pandas庫存取CSV文件
5.2.3應用案例
5.3XLSX存取
5.3.1用xlrd庫存取XLSX文件
5.3.2用xlsxwriter庫寫入XLSX文件
5.3.3用Openpyxl庫讀/寫、修改XLSX文件
5.3.4用Pandas庫讀/寫XLSX文件
5.3.5應用案例
5.4數(shù)據庫存取
5.4.1數(shù)據模型
5.4.2關系數(shù)據庫的基本概念與運算
5.4.3關系數(shù)據庫設計
5.4.4SQL語句
5.4.5在Python中操作MySQL
5.4.6應用案例
第6章數(shù)據處理與分析
6.1NumPy庫
6.1.1創(chuàng)建數(shù)組
6.1.2數(shù)組的常用屬性
6.1.3數(shù)組計算
6.1.4索引與切片
6.1.5應用案例
6.2Pandas庫
6.2.1Series類型結構
6.2.2DataFrame類型結構
6.2.3數(shù)據計算
6.2.4數(shù)據清洗
6.2.5應用案例
6.3文本分析
6.3.1中文字符
6.3.2英文文本
6.3.3詞云圖
6.4游客點評數(shù)據分析
6.4.1景點點評數(shù)量與景點熱度之間的相關性分析
6.4.2繪制歡樂谷點評的詞云圖
第7章數(shù)據可視化
7.1數(shù)據可視化概述
7.2Matplotlib可視化
7.3Pandas繪圖
7.4Pyecharts可視化
7.5旅游數(shù)據分析結果可視化
第8章旅游大數(shù)據綜合案例
8.1景點熱度分析
8.1.1需求分析
8.1.2思路設計
8.1.3編寫各模塊代碼
8.1.4編寫主文檔
8.1.5結論
8.2團購產品分析
8.2.1需求分析
8.2.2編寫代碼
8.2.3分析結果
第9章結論與展望
參考文獻