用Python分析北京景點,告訴你哪些景點性價比高
本文轉(zhuǎn)載自微信公眾號「志斌的python筆記」,作者志斌。轉(zhuǎn)載本文請聯(lián)系志斌的python筆記公眾號。
大家好,我是志斌~
五一馬上就要到了,難得的五天假期,雖然這次假期的時間安排備受人們吐槽,但是我們還是要去外出游玩的。那么去哪里玩是一個問題。于是,志斌用Python爬取了去哪兒網(wǎng)上北京景點的相關(guān)數(shù)據(jù),包括景點名稱、城區(qū)、熱度、價格、月銷量等數(shù)據(jù),對數(shù)據(jù)進(jìn)行可視化并作簡單分析,用以找到性價比較高的景點。
后臺回復(fù)[北京]兩字即可獲得全部代碼!
01數(shù)據(jù)采集
在之前的文章,我們已經(jīng)詳細(xì)的介紹了如何采集去哪兒網(wǎng)上的景點數(shù)據(jù),不會的小伙伴可以看看這篇文章用Python分析西安景點,告訴你哪些景點性價比高。我們這里就不在詳細(xì)介紹了,直接展示爬蟲的核心代碼:
- import requests
- from bs4 import BeautifulSoup
- import openpyxl
- for page in range(1,50):
- try:
- params = (
- ('from', 'mps_search_suggest_h'),
- ('keyword', '\u897F\u5B89'),
- ('page', str(page)),
- )
- response = requests.get('https://piao.qunar.com/ticket/list_%E8%A5%BF%E5%AE%89.html', headers=headers, params=params)
- soup = BeautifulSoup(response.text,'html.parser')
- zongs = soup.find_all('div',class_='sight_item')
- for i in zongs:
- name = i.find('h3').text
- diqu = i.find(class_='area').find('a').text
- redu = round(float(i.find(class_='product_star_level').text.split()[-1][:4]) * 5, 2)
- dizhi = re.findall('地址:(.*?)地圖', i.find(class_='address color999').text)[0]
- jiage = float(i.find(class_='sight_item_price').find('em').text)
- yuexiao = int(i.find(class_='sight_item_sold-num').find('span').text)
- xingji = i.find(class_='level')
- jingweidu = i['data-point']
02數(shù)據(jù)處理
01導(dǎo)入景點數(shù)據(jù)
用pandas讀取爬取的景點數(shù)據(jù)并預(yù)覽
- df = pd.read_excel('北京景區(qū)數(shù)據(jù).xlsx',names=['景點名稱','城區(qū)','熱度','地址','價格','月銷量','月銷額','星級','經(jīng)度','緯度'])
- print(df.head())
02刪除重復(fù)數(shù)據(jù)
網(wǎng)站中有一定的重復(fù)數(shù)據(jù),需要將其刪除。
- df = df.drop_duplicates()
03查看數(shù)據(jù)信息
查看字段類型和缺失值情況,符合分析需要,無需另做處理。
- df.info()
03可視化分析
我們來對這485個景點數(shù)據(jù)進(jìn)行可視化分析。
01景點介紹
通過對北京景點介紹進(jìn)行詞云圖繪制,我們很容易看出北京的特點。休閑、溫泉、體驗、娛樂、歷史、文化等詞的大量提及,說明北京是一座歷史悠久的現(xiàn)代化城市。
02熱度top10景點
從景點評分來看,故宮和鳥巢評分最高,5分滿分。其次是頤和園和八達(dá)嶺長城,都是4.1分。怪不得一搜索北京的旅游攻略,每一個里面都有這幾個景點。
03價格top10景點
從景點價格來看,這幾個景點的花銷都比價大,如果是窮游的朋友可以提前避開,對價格不敏感的朋友可以去體驗一下。
04月銷量top10景點
從門票月銷量來看,故宮排第一,月銷量15206。其次是八達(dá)嶺長城和頤和園,月銷量分別是10531和10162,其中恭王府、天壇公園和北京野生動物園也有5500+的月銷量。
05月銷額top20
從下圖可以看出、月銷額較大的還是故宮、北京野生動物園、八達(dá)嶺長城、頤和園等等、,看來月銷額受到月銷量的影響較大,受價格的影響較小。
06景點分布
從圖中我們可以看出景點主要集中在海淀區(qū)和豐臺區(qū)、房山區(qū),我們住宿的時候可以盡量選擇住在這三個區(qū),這樣出行游玩會比較方便。
07景點等級分布
從北京景點等級分布來看,3A以上等級的景點為116個,其中3A級景點40個,4A級景點66個,5A級景點10個。
04總結(jié)
通過上面簡單的分析,我們大致可以獲得以下幾點發(fā)現(xiàn):
1. 北京是一座歷史悠久的現(xiàn)代化城市。
2. 北京的景點主要集中在海淀區(qū)和豐臺區(qū)、房山區(qū),我們住宿的時候可以盡量選擇住在這三個區(qū),這樣出行游玩會比較方便。
3. 故宮和鳥巢這兩個景點的評分最高
4. 故宮的月銷量最高,所以來北京一定要去故宮看看。
溫馨提示:疫情還未結(jié)束,外出旅行做好個人防護(hù)。盡量避免到中高風(fēng)險地區(qū)游玩。