用技術(shù)分析下大家都喜歡啥樣的月餅
閱讀本文大概需要 3 分鐘。
中秋節(jié)介紹
中秋節(jié),又稱祭月節(jié)、月光誕、月夕、秋節(jié)、仲秋節(jié)、拜月節(jié)、月娘節(jié)、月亮節(jié)、團圓節(jié)等,是中國民間的傳統(tǒng)節(jié)日。
中秋節(jié)自古便有祭月、賞月、吃月餅、玩花燈、賞桂花、飲桂花酒等民俗,流傳至今,經(jīng)久不息。
每年中秋節(jié)到,總會去姥姥那里送中秋,并買上各種各樣的月餅,那個時候科技并不怎么發(fā)達(dá),不僅沒有這么多形形色色的月餅,也不知道哪些月餅賣得好? 月餅的價格分布是怎樣的呢? 什么地方的月餅銷量最高呢? 簡直有十萬個為什么,希望別人給我們解答。
隨著科技的飛速發(fā)展,互聯(lián)網(wǎng)溝通了你我他。通過淘寶上月餅的銷量,就可以解決我們想要知道的好多問題。基于此,我爬取了淘寶上4000多條月餅的銷售數(shù)據(jù),為大家展示了一幅漂亮的可視化大屏,解決大家心目中的問題。

數(shù)據(jù)采集
這次爬取淘寶,采用的是最簡單的方式:Selenium控制Chrome瀏覽器進(jìn)行自動化操作,中途只需要掃碼登陸一次,即可完成整個數(shù)據(jù)的爬取。
這種方法及其好用,不會出現(xiàn)封IP、封號的情況,大家放心使用!
大家運行這個代碼之前,唯一要做的就是下載與谷歌版本相對應(yīng)的chromedriver驅(qū)動,然后進(jìn)行相關(guān)配置即可。其實關(guān)于淘寶整個數(shù)據(jù)爬取的過程,我之前為大家寫了一篇很詳細(xì)的文章,供大家參考。
淘寶爬蟲完整講述:http://suo.im/6vwBc8
部分爬蟲代碼如下:
from?selenium?import?webdriver
#?搜索商品,獲取商品頁碼
def?search_product(key_word):
????#?定位輸入框
????browser.find_element_by_id("q").send_keys(key_word)
????#?定義點擊按鈕,并點擊
????browser.find_element_by_class_name('btn-search').click()
????#?最大化窗口:為了方便我們掃碼
????browser.maximize_window()
????#?等待15秒,給足時間我們掃碼
????time.sleep(15)
????#?定位這個“頁碼”,獲取“共100頁這個文本”
????page_info?=?browser.find_element_by_xpath('//div[@class="total"]').text
????#?需要注意的是:findall()返回的是一個列表,雖然此時只有一個元素它也是一個列表。
????page?=?re.findall("(\d+)",page_info)[0]
????return?page數(shù)據(jù)清洗
數(shù)據(jù)清洗很重要,這個對于我們后續(xù)做可視化展示,極其重要。因此我們需要根據(jù)后面要做的圖形,然后進(jìn)行對應(yīng)的進(jìn)行數(shù)據(jù)清洗。
爬取到的原始數(shù)據(jù)如下:

整個數(shù)據(jù)看上去算是比較干凈,但是還是有幾個地方指的我們處理一下。
爬取到的原始數(shù)據(jù)沒有列名,我們需要添加一個新列名; 整個爬蟲過程中,會出現(xiàn)重復(fù)數(shù)據(jù),我們需要提前去重處理; 將購買人數(shù)為空的記錄,替換成0人付款; 將購買人數(shù)轉(zhuǎn)換為銷量(注意部分單位為萬); 刪除無發(fā)貨地址的商品,并提取其中的省份;
數(shù)據(jù)清洗部分代碼如下:
#?提取數(shù)值
df['num']?=?[re.findall(r'(\d+\.{0,1}\d*)',?i)[0]?for?i?in?df['付款人數(shù)']]??#?提取數(shù)值
df['num']?=?df['num'].astype('float')??#?轉(zhuǎn)化數(shù)值型
#?提取單位(萬)
df['unit']?=?[''.join(re.findall(r'(萬)',?i))?for?i?in?df['付款人數(shù)']]??#?提取單位(萬)
df['unit']?=?df['unit'].apply(lambda?x:10000?if?x=='萬'?else?1)
#?計算銷量
df['銷量']?=?df['num']?*?df['unit']現(xiàn)在來看看,清洗后的數(shù)據(jù)是啥樣的?

可視化展示
可視化是整個文章的亮點所在,所謂“字不如表、表不如圖”。整個可視化大屏我們基于以下五個問題開展而來。
月餅銷量Top10的柱形圖; 店鋪月餅銷量Top10的柱形圖; 全國月餅銷量的地域分布地圖; 不同價格區(qū)間的月餅銷量圓環(huán)圖; 月餅銷售關(guān)鍵字的詞云圖;
鑒于整個文章排版,本文可視化部分的代碼均可在本文末尾獲取。
1)月餅銷量Top10的柱形圖

結(jié)論分析:銷量Top10的月餅,其實對于我們選購月餅還是挺有指導(dǎo)意義的。從圖中可以看到這個稻香村月餅,買的還是極其好的,銷量排名前10的產(chǎn)品中,稻香村月餅占據(jù)了3個位置。還有一個名字特別熟悉:五芳齋,只知道他家的粽子做的好,原來月餅也做的不錯,所以說品牌效應(yīng)還是很好的。那么你是否可以再看看,這些店里面是否有其他更好吃的點心呢?
2)店鋪月餅銷量Top10的柱形圖

結(jié)論分析:這里圖中顯示的結(jié)果,和第一張圖顯示的結(jié)果不謀而合,就不再過多的解釋了。唯獨感興趣的還是這個稻香村,為啥銷量如此好?百度一下得知原來是一家百年老店,附帶一張圖如下。

3)全國月餅銷量的地域分布地圖

結(jié)論分析:從圖中可以看出,廣東、浙江、山東、福建、北京的月餅銷量,在全國都是遙遙領(lǐng)先的。查閱資料可以發(fā)現(xiàn),它們幾乎都有自己的品牌,像廣東的廣式月餅、浙江的衢式月餅、山東的魯式月餅等。廣式月餅重油重糖、京式月餅重油輕糖、魯式月餅口味清淡、蘇式月餅重甜。大家可以根據(jù)自己的需求,給親戚長輩們合理挑選符合口味的月餅哦。
4)不同價格區(qū)間的月餅銷量圓環(huán)圖

結(jié)論分析:當(dāng)然價格才是大家關(guān)注的焦點。觀察上圖可以發(fā)現(xiàn),月餅的價格幾乎是處在中間的、能被大家接受的范圍(22-115),再稍微貴一點的就是115-633這個區(qū)間(還可以接受),而處在633元以上的月餅幾乎為0。畢竟中秋節(jié)是一個傳統(tǒng)節(jié)日,適中的價格才能被大家接受,利潤就這么幾天,薄利多銷才是王道。
5)月餅銷售關(guān)鍵字的詞云圖

結(jié)論分析:從圖中可以看出,廣式月餅極其受歡迎(PS:我還沒吃過),其次小時候經(jīng)常吃的五仁月餅一直賣的挺好,豆沙月餅還一直是很多孩子的最愛呀!還有現(xiàn)在出來的各種各樣的新鮮口味,像美心、酥皮、心奶、燕窩、白蓮等等,你到底喜歡哪一個呢?
