?

基于Scrapy框架的電商數據分析平臺

2017-11-15 11:35孫小越王超
電腦知識與技術 2017年28期
關鍵詞:網絡爬蟲數據分析電子商務

孫小越+王超

摘要:隨著電子商務的蓬勃發展,在各電商平臺中都蘊藏了大量有價值的信息數據。從海量數據信息中分析獲得較全面的、客觀的消費特征對商家的營銷策略有很大意義。網絡爬蟲是獲取網絡中大量數據的重要途徑,通過使用Scrapy爬蟲框架,深入解析并獲取京東網的產品信息和評論大數據,從中分析品牌、商品、用戶三方的屬性特征,將數據整合后以簡潔、直觀的圖表形式呈現給商家和消費者,既為消費者提供可靠的參考信息,也使商家更好地了解顧客的特點和需求,從而提升服務質量、促進消費。

關鍵詞:電子商務;網絡爬蟲;Scrapy;數據分析;SpringMVC

中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2017)28-0276-03

Abstract: With the rapid development of e-commerce, there are a lot of valuable information in various e-commerce platforms.It is of great significance to obtain and analyze comprehensive and objective consumption characteristics from mass data. Web crawler is an important way to obtain large amounts of data from the network, through the Scrapy crawler frame, probing information and comments of the products from JingDong website, and analyzing brands,products and user characteristics with intuitive charts for businesses and consumers.The study not only provides consumers with reliable reference information, but also makes business better understand the characteristics and requirements of customers to promote service quality and consumption.

Key words: E-Commerce; web crawler; scrapy; data analysis; springmvc

1 背景

由于信息技術與電子商務的迅速發展,越來越多的人開始享受網上交易給生活帶來的諸多便利,國內大批優秀網絡商業門戶,如淘寶網、京東網、當當網等平臺的交易量和交易額都在快速增長中,隨之而產生的網絡數據也在呈指數式的增長。在商品詳情和評論數據信息中含有許多涉及銷售的重要信息,如市場供求信息、潛在的用戶需求等。獲得網絡數據的渠道有很多,但是由于商品種類和特征的不同,消費者在購買產品時的行為是多樣的、復雜的,通常難以從中快速、精確的獲得有效信息。因此,挖掘海量商品數據中的有益信息對于用戶、電商和企業都具有非常重要的意義。

本文以國內熱門電商平臺京東網為例,研究如何爬取其冰箱分類下的所有商品數據,并將商品特征和評論中的觀點進行提取和整合,挖掘出有價值的評價觀點和用戶購買傾向,并將結果可視化為動態可交互的圖表,達到清晰和直觀的信息呈現效果。

2 基于Scrapy框架的爬蟲結構設計

2.1 Scrapy框架設計

網絡爬蟲是一種按照一定的規則,自動地抓取網頁信息的程序,它們可以自動采集所訪問頁面內容,使得用戶能快速地獲取到所需要的信息。Scrapy是純Python實現的應用爬蟲框架,基于Twist的異步處理,使用起來相對簡單輕巧。其具體內部原理實現的整體架構如圖1。

2.1.1 分析頁面內容

框架抓取解析的頁面分為兩種,一種是靜態HTML頁面,通過爬蟲程序訪問到目標頁面后,用正則表達式對其頁面代碼進行解析,即可獲得所需要的信息;而京東的價格、評論頁面均采用了動態頁面技術,爬蟲無法直接提取網頁中的動態信息。為了獲得這些數據,首先分析目標頁面結構,找到其對應的通過AJAX加載的JavaScript請求數據,獲取后得到Json格式的數據。

2.1.2 抓取策略

為了減輕對方服務器的負擔,提高抓取的效率,設計抓取策略時要深入的分析目標網頁面格式,最大可能在每一個目標頁面中得到最多的信息,盡量減少對網站的訪問量。此外,由于獲取的數據規模較大,本文通過以下四個步驟合理地避免封鎖:

1) 構造合理的HTTP請求頭;

2) 正確的設置合法的Cookie;

3) 限定抓取頻率,以合理的時間間隔訪問網站;

4) 使用可變的遠程IP地址訪問服務器。

本文使用的Scrapy框架的工程目錄如圖2所示。

2.2 結構化數據的存儲

在Scrapy框架中,通過Item Pipeline處理Spiders傳遞過來的網頁數據。 Item是Scrapy裝載數據的容器,因此需要編寫Item容器,自定義提取字段,將Item模型化。接下來Pipeline會對數據進行一些處理,在Pipeline中編寫一個Python類去檢查爬取的數據中是否有重復,若是重復則刪去,然后將這些字段直接存儲到本地或數據庫。本文設計保存到MySQL數據庫中,爬蟲的流程示意圖如圖3。

3 數據分析及信息可視化呈現endprint

在綜合考慮性能、開發周期、系統功能的維護與擴展等多方面因素的基礎上,本文采用SpringMVC作為系統的框架模式,完成了系統的數據庫邏輯結構、業務邏輯層和用戶界面表示層的設計。

信息的可視化為人們更好地理解信息提供了極大便利。ECharts是來自開源的百度商業前端數據可視化團隊,它是基于Canvas的純Javascript 的圖表庫,提供直觀,生動,可交互的數據可視化圖表。創新的拖拽重計算、數據視圖、值域漫游等特性大大增強了用戶體驗,賦予了用戶對數據進行挖掘、整合的能力。

3.1 市場分析

3.1.1 熱賣參數分析

以冰箱為例進行分析,在冰箱產品中多個參數中,選取影響銷售較大的價格、面板顏色、總容積、開門方式、能效等級,制冷方式、控制方式、能效等級這8個參數進行分析,以評論中涉及的產品購買次數為銷量,計算得到整個市場中最熱銷參數,以字符云的方式展示,如圖4。

3.1.2 參數趨勢分析

針對影響因素較大參數進行單獨分析,如價格、開門方式、容量、顏色等。以開門方式為例,可以計算出不同開門方式的冰箱每月銷售占比,以堆積條形圖的形式呈現,通過點擊參數,查看參數每月銷售趨勢,如圖5。

如圖所示,可以得出市場售出冰箱的開門方式以雙開門和三開門為主,并且隨著時間月份增加,雙開門冰箱的銷量也在不斷增加。

3.2 品牌及產品分析

3.2.1 品牌地區分布對比分析

針對不同的品牌進行對比,統計消費用戶的地區特征,既可以反映出同一品牌不同地區的喜好,也能反映出某一省份的用戶對不同品牌的喜愛程度。如圖6所示,柱狀圖表示幾個品牌在不同年份不同城市的銷額,餅狀圖表示某一年幾個品牌的銷額占比??梢钥闯?,市場中的銷量主要來自于北京、上海、廣州、四川等城市。

3.2.2 品牌價位銷量分析

價格是影響消費者行為的重要因素,不同品牌對產品價格的定位不同,其不同價位的銷售能力也是各有不同。圖7中數字表示在該品牌下該價格區間的銷量占比,如調整藍色進度條為0.5 - 1,則圖示中只顯示品牌銷量占比在0.5-1區間的價位。通過拖動藍色進度可清晰地看出品牌在哪些價位銷量較高,更受用戶的歡迎。

3.2.3 產品買家印象分析

買家印象是評論數據中能夠獲取到的重要信息,在網站中以標簽的形式體現。用戶可以點擊產品進行對比,總結用戶購買后反映的不同意見。圖8通過雷達圖表示所選產品的買家印象中占比最高的6個特性,分別是“空間大”、“節能省電”、“外觀漂亮”、“噪音很小”、“制冷效果好”、“冰箱不錯”。將鼠標放到雷達圖某產品線上,可以看到該產品的6個特性占總評論數的比例。

4 結束語

在電商平臺中,商品性能和其他用戶的評論是影響消費者的重要因素。用戶在購買商品后能夠在電商平臺發表使用后的體驗,使得其他消費者也可以從網絡中獲取大量信息,從而進一步了解產品。因此,對電商平臺的數據信息進行挖掘,可以為消費者提供更好的參考,商家能夠進一步了解消費者喜好以便進行銷售策略的調整。

對此,本文圍繞電商平臺中大數據的獲取、觀點提取和信息整合進行探討,深入研究了網絡爬蟲Scrapy框架的工作原理和數據的處理機制,實現了對電商平臺靜態及動態頁面評數據的爬取和結構化入庫;使用SpringMVC框架構件分析平臺,實現對任意品牌、產品的某些特征的對比和分析;將數據以直觀、易讀的方式可視化呈現給用戶,對企業、商家和消費者掌握整個市場的各方面情況具有重要意義。

參考文獻:

[1] 譚文斌. 基于電商平臺的產品評論大數據獲取及應用[D]. 貴陽: 貴州師范大學, 2016.

[2] 王一博. 基于Scrapy的社交網絡異常用戶檢測系統研究與開發[J]. 信息與電腦:理論版, 2016(14):97-98.

[3] 舒德華. 基于Scrapy爬取電商平臺數據及自動問答系統的構建[D]. 武漢: 華中師范大學, 2016.

[4] 王靜. 基于Scrapy的電子商務網絡測量與網絡特征分析[D]. 北京: 北京交通大學, 2012.

[5] 鄭幸源, 洪親, 蔡堅勇, 等. 基于AJAX異步傳輸技術與Echarts3技術的動態數據繪圖實現[J]. 軟件導刊, 2017, 16(03):143-145.

[6] 朱慧棟. 基于SpringMVC框架的電子商務系統的設計與實現[D]. 長沙: 湖南大學, 2016.

[7] 邵斐, 孫濟慶. 一種適用于動態網頁的網絡蜘蛛爬行策略研究[J]. 情報雜志, 2007(5):28-30.

[8] 謝克武. 大數據環境下基于python的網絡爬蟲技術[J]. 電子制作, 2017(9):44-45.

[9] 王彥博, 樊營, 高潛. 大數據時代網絡爬蟲技術在商業銀行中的應用[J]. 銀行家, 2016(6):114-116.endprint

猜你喜歡
網絡爬蟲數據分析電子商務
《電子商務法》如何助力直銷
電子商務
煉鐵廠鐵量網頁數據獲取系統的設計與實現
淺析大數據時代對企業營銷模式的影響
關于加快制定電子商務法的議案
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合