您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么用Python分析國慶旅游景點”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
使用Python分析出國慶哪些旅游景點:好玩、便宜、人還少的地方,不然拍照都要搶著拍!
既然做數據分析肯定要先搞到數據,最開始豬哥在一些官方網站查找旅游信息,畢竟官方的數據可信度高點, 但我一無所獲,有點失望!
然后尋找其他替代方案:爬取出行網站的旅游景點售票數據,這樣也可以反映出旅游景點的熱度!
豬哥首先想到 去哪兒,這里必須要安利一波去哪兒,同樣的酒店同樣的房間,去哪兒價格基本都是最低,所以豬哥也用的最多!
選好學習對象,那我就開始吧!
注??:本教程僅用作學習交流,如有侵害任何人權益,請聯系豬哥刪除!
1.爬取單頁數據
我們可以在哪去兒的門票頁搜索:**國慶旅游景點**,就可以看到推薦的景點的一些信息,如:名稱、地區、熱度、銷量、價格、等級、地理信息等等,信息應該說是比較全,良心!
然后按下F12打開瀏覽器調試窗口,查找加載數據的url(翻頁就可以看到)
竟然直接返回了json數據,真是太方便了
最后使用requests庫寫一個get請求就可以了
這樣一頁數據就抓取下來了,是不是很簡單?
這里說下去哪兒門票頁抓取數據還是很簡單,不需要登錄、不需要代理 、甚至不需要header也可以成功,后面批量抓取頁沒出現限制,相對于淘寶來說簡單了許多!
2.提取有效信息
既然數據拿到了,那就看看數據結構,然后提取自己想要的屬性吧
這里豬哥提取了:id、名稱、星級、評分、門票價格、銷量、地區、坐標、簡介這些信息,基本有效信息都保存起來!
3.保存到excel
需要的數據提取出來之后,我們就可以將他們保存起來。這里我們使用pandas庫保存excel文件。
沒有安裝pandas庫的同學安裝一下
pip install xlrd pip install openpyxl pip install numpy pip install pandas
這里單頁數據的處理就完成了,爬取、解析、保存三步走~
4.批量爬取
批量爬取也很簡單,先找分頁數據,多點幾下頁數比較不同參數就能看出來
經過一會的分析,我們便可以看出參數 page 就是分頁參數了,這樣我們在外層寫一個for循環,把頁數傳入就可以實現批量爬取
那個36是我在網頁上看到了,當然也可以實現自動判斷是否爬取完成,只要判斷每次返回的條數即可!
看看批量爬取的效果
數據都下載完畢后,就要思考如何去利用分析這些數據了,豬哥簡單做了幾個分析:
鴻蒙官方戰略合作共建——HarmonyOS技術社區
景點門票銷量排行分析
景點門票銷售額排行分析
各省各等級景點數分析
景點銷量熱力圖分析
推薦景點分析
我們使用的可視化庫仍然是:pyecharts庫 ,更多維度分析等待你去思考~
1.景點門票銷量排行分析
我們先來分析下景點門票銷量排行
我們創建了一個透視表,然后根據銷量排序!最后生成柱狀圖,一起來看看效果:
我們可以看到迪士尼門票銷量排第一
2.景點銷售額排行分析
銷售額=單價*銷量,我們可以將每行的price和sale相乘算出銷售額
我們將得到的銷售額數據放回df中,然后再排序
迪士尼真是吸金厲害!!!
3.各省各等級景點數分析
由于時間原因,該項分析暫未完成,本想分析下每個省每個等級的景點有多少個,但是由于時間原因暫未完成,感興趣的同學可以下載源碼自己試試 ,就當課后作業叭~
4.景點銷量熱力圖分析
之前我們也做過很多熱力圖,都是用的pyecharts庫,今天我們來點不一樣 的,我們使用百度地圖開放api(免費)做一個熱力圖,你首先要做的就是申請一個百度地圖開放平臺的應用,操作很簡單,如何申請可以 直接百度或者看看這篇文章:https://jingyan.baidu.com/article/363872eccda8286e4aa16f4e.html
需要注意的是:在申請應用的時候類型一定要選瀏覽器
然后你就可以下載一個百度熱力圖的demo的html,在html中把ak碼換成自己的。
換完ak碼就要換json數據了,我們先生成和默認數據一樣格式的json數據,然后再替換掉
最后來看看效果叭,動態地圖支持放大縮小,可仔細查看各省、市、區景點熱力圖
5.推薦景點分析
應該推薦怎樣的景點呢?豬哥認為是:高評分、銷量少、價格便宜。
推薦系數和評分成正比,和銷量、價格成反比,所以豬哥設計了一個最簡單的算法:
瞎推薦系數=評分/(銷量價格) * 1000
來看看這個簡易的推薦算法得出的結果
“怎么用Python分析國慶旅游景點”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。