首頁  >  文章  >  用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

-
-原創
2018-03-07 16:07:583711瀏覽

用 Python 爬取淘寶某商品的整個過程,並對商品資料進行了挖掘與分析,最終得出結論。

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

專案內容

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#本案例選擇商品類別目:沙發。

數量:共 100 頁  4400 個商品。

篩選條件:天貓、銷售量從高到低、售價 500 元以上。

專案目的

對商品標題進行文字分析,詞雲視覺化

#不同關鍵字word 對應的sales 的統計分析

商品的價格分佈狀況分析

商品的銷售分佈狀況分析

不同價格區間的商品的平均銷售分佈

商品價格對銷售的影響分析

商品價格對銷售額的影響分析

不同省份或城市的商品數量分佈

不同省份的商品平均銷售分佈

註:本項目僅以以上幾項分析為例。

專案步驟

資料收集:Python 爬取淘寶網商品資料

對資料進行清洗與處理

文字分析:jieba 分詞、wordcloud 視覺化

資料長條圖視覺化:barh

資料直方圖視覺化:hist

資料散點圖視覺化:scatter

資料迴歸分析視覺化:regplot

工具&模組

工具:本案例程式碼編輯工具Anaconda 的Spyder。

模組:requests、retrying、missingno、jieba、matplotlib、wordcloud、imread、seaborn 等。

爬取資料

因為淘寶網是反爬蟲的,雖然使用多執行緒、修改headers 參數,但仍然不能保證每次100% 爬取,所以我增加了循環爬取,每次循環爬取未爬取成功的頁,直至所有頁爬取成功停止。

說明:淘寶商品頁為 JSON 格式,這裡使用正規表示式來解析。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

資料清洗、處理

資料清洗、處理這個步驟也可以在Excel 完成,再讀入數據。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#說明:根據需求,本案例只取了item_loc,raw_title,view_price, view_sales 這4 列數據,主要對區域、標題、價格、銷售量進行分析。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#資料探勘與分析

對raw_title 欄位標題進行文字分析

使用結巴分詞器,安裝模組pip install jieba:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

對title_s(list of list 格式)中的每個list 的元素(str)進行過濾,剔除不需要的詞語,即把停用詞表stopwords 中有的詞語都剔除掉:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#因為下面要統計每個詞語的個數,所以為了準確性,這裡對過濾後的資料title_clean 中的每個list 的元素進行去重,即每個標題被分割後的字詞唯一。

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

觀察 word_count 表中的字語,發現 jieba 預設的字典無法滿足需求。

有的字詞(如可拆洗、不可拆洗等)卻被cut,這裡根據需求對字典加入新詞(也可以直接在字典dict.txt 裡面增刪,然後載入修改過的dict. txt)。

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

詞雲視覺化需要安裝 wordcloud 模組。

安裝模組有兩種方法:

pip install wordcloud

#下載Packages 安裝:pip install 軟體包名稱

注意:要把下載的軟體套件放在Python 安裝路徑下。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#分析結論:

組合、整裝商品佔比很高。

從沙發材質看:布沙發佔比很高,比皮藝沙發多。

從沙發風格看:簡約風格最多,北歐風次之,其他風格排名依序是美式、中式、日式、法式等。

從戶型看:小戶型佔比最高、大小戶型次之,大戶型最少。

不同關鍵字word 對應的sales 總和的統計分析

說明:例如詞語“簡約”,則統計商品標題中含有“簡約”一詞的商品的銷量之和,即求出具有「簡約」風格的商品銷量總和。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

對錶 df_word_sum 中的 word 和 w_s_sum 兩列資料進行視覺化。 (本例中取銷售排名前30 的字詞進行繪圖)

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

由圖表可知:

組合商品銷量最高。

從類別看:布沙發銷量很高,遠超過皮藝沙發。

從戶型看:小戶型沙發銷售量最高,大小戶型次之,大戶型銷售最少。

從風格看:簡約風銷量最高,北歐風次之,其他依序是中式、美式、日式等。

可拆洗、轉角類沙發銷售可觀,也是頗受消費者青睞的。

商品的價格分佈狀況分析

分析發現,有些數值太大,為了讓視覺化效果更直觀,這裡我們結合自身產品狀況,選擇價格小於 20000 的商品。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#由圖表可知:

商品數量隨著價格整體呈現下降階梯形勢,價格越高,在售的商品越少。

低價位商品居多,價格在 500-1500 之間的商品最多,1500-3000 之間的次之,價格 1 萬以上的商品較少。

價格 1 萬元以上的商品,在售商品數量差異不大。

商品的銷售分佈狀況分析

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

同樣,為了讓視覺化效果更直觀,這裡我們選擇銷售量大於100 的商品。

代碼如下:

由圖表及數據可知:

銷量100 以上的商品僅佔3.4% ,其中銷量100-200 之間的商品最多,200- 300 之間的次之。

銷售 100-500 之間,商品的數量隨著銷售量呈現下降趨勢,且趨勢陡峭,低銷售商品居多。

銷售 500 以上的商品很少。

不同價格區間的商品的平均銷售分佈

代碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

由圖表可知:

價格在1331-1680 之間的商品平均銷量最高,951-1331 之間的次之,9,684 元以上的最低。

整體呈現先增後減的趨勢,但最高峰處於相對低價位階段。

說明廣大消費者對購買沙發的需求較多處於低價位階段,在 1,680 元以上價位越高,平均銷售量基本上是越少。

商品價格對銷售的影響分析

同上,為了讓視覺化效果更加直觀,這裡我們結合自身產品狀況,選擇價格小於 20000 的商品。

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#由圖表可知:

整體趨勢:隨著商品價格增多,其銷量減少,商品價格對其銷售影響很大。

價格500-2500 之間的少數商品銷量衝的很高,價格2500-5000 之間的商品多數銷量偏低,少數相對較高,但價格5000 以上的商品銷量均很低,沒有銷量突出的商品。

商品價格對銷售的影響分析

程式碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

由圖表可知:

整體趨勢:由線性迴歸擬合線可以看出,商品銷售隨著價格成長呈現上升趨勢。

多數商品的價格偏低,銷售量也偏低。

價格在0-20000 的商品只有少數銷售額較高,價格2-6 萬的商品只有3 個銷售額較高,價格6-10 萬的商品有1 個銷售額很高,而且是最大值。

不同省份的商品數量分佈

代碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

#由圖表可知:

廣東的最多,上海次之,江蘇第三,尤其是廣東的數量遠超過江蘇、浙江、上海等地,說明在沙發這個子類目,廣東的店鋪占主導地位。

江浙滬等地的數量差異不大,基本上相當。

不同省份的商品平均銷售分佈

代碼如下:

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

熱力型地圖

用Python爬了4000多條淘寶商品數據,發現了這些規則! ! !

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn