馮傳新
摘要:基于大數(shù)據(jù)技術(shù)對(duì)客戶信息進(jìn)行行為分析和預(yù)測,已經(jīng)引起越來越多的企業(yè)進(jìn)行關(guān)注。本文根據(jù)京東購物網(wǎng)站的各個(gè)店鋪網(wǎng)頁分析,并通過數(shù)據(jù)挖掘,數(shù)據(jù)分析,完成了一個(gè)基于Django web框架搭建的一個(gè)簡易的后臺(tái),然后將分布式所抓取的數(shù)據(jù)和數(shù)據(jù)分析連接起來,并將分析所得結(jié)果返回給前端顯示的一個(gè)京東購物數(shù)據(jù)分析系統(tǒng)。從而對(duì)京東商鋪客戶評(píng)價(jià)進(jìn)行分析,獲取該商品的質(zhì)量優(yōu)劣,可以迅速的幫助用戶獲取商品的很多重要信息。
Abstract: The behavior analysis and prediction of customer information based on large data technology has caused more and more enterprises to pay attention to it. According to the data mining, data analysis of the every store website in the JINGDONG mall, a simple backstage is completed based on the Django web framework, and then the captured data and analysis of distributed data analysis are linked, and the results are sent to a data display front-end analysis system of JINGDONG mall. Therefore, and the quality of the product can be obtained by analyzing the evaluation of the JINGDONG mall customers. It can help the users to obtain many important information of the commodity quickly.
關(guān)鍵詞:數(shù)據(jù)分析系統(tǒng);python2.7;Django;數(shù)據(jù)挖掘;數(shù)據(jù)分析
Key words: data analysis system;python2.7;Django;data mining;data analysis
中圖分類號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1006-4311(2018)28-0255-04
0 引言
隨著大數(shù)據(jù)的發(fā)展、以及國家推動(dòng)實(shí)施大數(shù)據(jù)的號(hào)召,各個(gè)行業(yè)都應(yīng)加強(qiáng)信息化和工業(yè)化深度的融合,加快進(jìn)入數(shù)字經(jīng)濟(jì)時(shí)代。當(dāng)前網(wǎng)絡(luò)購物已經(jīng)成為人們生活不可分割的一部分,但面對(duì)琳瑯滿目的商品,人們需要去瀏覽和對(duì)比各個(gè)店鋪的信息,如好評(píng),差評(píng),購買人數(shù)等繁瑣的步驟。通過分析網(wǎng)購活動(dòng),收集每個(gè)商家的所有有用信息,并對(duì)這些大數(shù)據(jù)進(jìn)行分析,將對(duì)消費(fèi)者有用的信息直接簡單明了的展示給客戶。
本課題的提出意在開發(fā)一個(gè)面向消費(fèi)者的一個(gè)購物網(wǎng)站數(shù)據(jù)分析系統(tǒng),以京東購物網(wǎng)站為例,根據(jù)京東購物網(wǎng)站數(shù)據(jù)分析系統(tǒng)的實(shí)現(xiàn),基于python2.7,scrapy爬蟲框架,redis數(shù)據(jù)庫以及Django web框架,pandas數(shù)據(jù)分析模塊等技術(shù)進(jìn)行綜合運(yùn)用,從而開發(fā)實(shí)現(xiàn)一套以數(shù)據(jù)挖掘及分析為核心的京東商城數(shù)據(jù)分析系統(tǒng)。
1 系統(tǒng)關(guān)鍵技術(shù)研究
整個(gè)系統(tǒng)使用python2.7編程語言,開發(fā)平臺(tái)使用pycharm作為開發(fā)平臺(tái),數(shù)據(jù)挖掘使用scrapy開源框架,redis作為數(shù)據(jù)庫,數(shù)據(jù)分析以pandas作為數(shù)據(jù)分析工具,以Django web框架搭建一個(gè)簡易的web后臺(tái)。具體的研究內(nèi)容包括了以下這幾個(gè)方面:
①研究完成該系統(tǒng)的關(guān)鍵技術(shù):scarpy+redis實(shí)現(xiàn)分布式爬蟲,pandas實(shí)現(xiàn)數(shù)據(jù)分析,django實(shí)現(xiàn)web展示;
②對(duì)京東商城進(jìn)行網(wǎng)頁源代碼分析以及爬取所用信息,對(duì)所用信息進(jìn)行分析提煉,以詞云,圖表形式展現(xiàn)出來;
③使用python編程語言,實(shí)現(xiàn)數(shù)據(jù)挖掘、數(shù)據(jù)分析、前端展示三大部分。
2 系統(tǒng)需求分析
2.1 總體需求
京東數(shù)據(jù)分析系統(tǒng)是以京東網(wǎng)絡(luò)購物網(wǎng)站為研究對(duì)象,主要目的是獲取給定商鋪的url,通過系統(tǒng)分析,直接將商鋪的商品信息,及評(píng)論中對(duì)商品評(píng)價(jià)的關(guān)鍵詞直接呈現(xiàn)給消費(fèi)者,使消費(fèi)者對(duì)商品信息一目了然,從而節(jié)約大量時(shí)間。
2.2 性能需求
系統(tǒng)開發(fā)的總體任務(wù)是實(shí)現(xiàn)京東商城的自動(dòng)化爬取及分析,以一種快速、全名、高提練度和高對(duì)比度的信息獲取和展示方式。
2.3 開發(fā)環(huán)境
Python2.7 + Pycharm5.7 + Redis4.0 + Window 10
3 京東數(shù)據(jù)分析系統(tǒng)設(shè)計(jì)
3.1 數(shù)據(jù)庫設(shè)計(jì)
數(shù)據(jù)挖掘中,爬取數(shù)據(jù)時(shí),單進(jìn)程將會(huì)使爬蟲的效率嚴(yán)重下降,請(qǐng)求返回的等待時(shí)間會(huì)消耗大量時(shí)間,而分布式爬蟲卻可以大大降低時(shí)間的消耗。Redis數(shù)據(jù)庫是開源且用ANSI C語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存一個(gè)持久化的日志型、key-value數(shù)據(jù)庫,而且支持各種語言的Api。Redis就是一個(gè)數(shù)據(jù)庫類型的系統(tǒng),但它在分布式中,由于它的隊(duì)列性特別的好用,所以分布式開發(fā)中它成為一個(gè)不錯(cuò)的選擇,本系統(tǒng)采用Redis作為分布式爬蟲數(shù)據(jù)庫。
本系統(tǒng)數(shù)據(jù)庫主要由商品抓取記錄表和商品分析結(jié)果表兩部分組成。
①商品抓取記錄表(Command)。
②商品評(píng)論分析結(jié)果表(Result)。
3.2 數(shù)據(jù)爬取模塊設(shè)計(jì)
該模塊負(fù)責(zé)系統(tǒng)中源數(shù)據(jù)的集成,采用分布式抓取,快速的在短時(shí)間內(nèi)盡量抓取足夠多的商品評(píng)價(jià),通過Chrome的抓包分析出京東網(wǎng)上商城的評(píng)價(jià)請(qǐng)求URL,檢測Cooke之類的反爬措施等,編碼利用Scrapy框架抓取京東商城物品評(píng)價(jià)信息存入數(shù)據(jù)庫以備用。
具體步驟如圖1所示。
4 京東數(shù)據(jù)分析系統(tǒng)
平臺(tái)搭建、數(shù)據(jù)抓取、數(shù)據(jù)分析、項(xiàng)目的功能模塊的實(shí)現(xiàn)。
4.1 平臺(tái)的搭建
本項(xiàng)目以python2.7作為開發(fā)語言,本項(xiàng)目主要由Scrapy和Django框架搭建而成,所以在進(jìn)行項(xiàng)目開發(fā)前需要搭建好相應(yīng)的環(huán)境。
scrapy框架搭建:
scrapy是一個(gè)非常好用的爬蟲框架,進(jìn)入cmd命令窗口,進(jìn)入jd_analysis-master目錄下輸入以下命令便可創(chuàng)建一個(gè)jd_spiders為名稱的項(xiàng)目,即scrapy startproject jd_spiders,便可得到一個(gè)spiders文件夾及其目錄結(jié)構(gòu)。
4.2 數(shù)據(jù)爬取模塊實(shí)現(xiàn)
抓取的url起始頁,由用戶輸入的京東商鋪開始,代碼如圖2所示。
在使用python爬蟲爬取數(shù)據(jù)地時(shí)候,經(jīng)常會(huì)遇到一些網(wǎng)站的反爬措施,一般針對(duì)于headers中的user-agent,如果沒有對(duì)headers進(jìn)行設(shè)置,user-agent會(huì)聲明自己是python腳本,一般有反爬想法地網(wǎng)站,會(huì)拒絕這樣的連接,而修改headers可以將自己地爬蟲腳本偽裝成瀏覽器地正常訪問,來規(guī)避這一機(jī)制。Headers的配置如圖3所示。
4.3 數(shù)據(jù)分析模塊實(shí)現(xiàn)
此模塊主要用于分析爬取的數(shù)據(jù),并圖形化,并在前端展示。以“百富帝純棉四件套”商品為例,客戶只需輸入該商品的url,即可開始分析,總體數(shù)據(jù)分析如圖4所示。
好評(píng)數(shù)據(jù)如圖4所示。
該商品不同顏色購買數(shù)量關(guān)系圖如圖4所示,圖中 “玫瑰金”、“黑色”和“金色”三種系列顏色銷量最好,分別達(dá)到34.667%、21.333%和16.000%,其余系列都沒有達(dá)到10%。
購買渠道占比分析圖如圖5所示,從中可以看出移動(dòng)端渠道購買的為92.8%,網(wǎng)頁端購物渠道為7.2%。
購買用戶的等級(jí)分布圖如圖6所示,前三名分別是PLUS會(huì)員、銀牌會(huì)員和金牌會(huì)員,百分比分別達(dá)到了32.4%、23%和18%。
至此數(shù)據(jù)數(shù)據(jù)分析完成,已將該商品的全部有用信息即商品評(píng)價(jià)、顏色銷量、購買時(shí)間、購買渠道和用戶等級(jí)分別展示給了用戶。
5 結(jié)束語
數(shù)據(jù)是一個(gè)企業(yè)的核心無形競爭力,在這樣的環(huán)境下,更需要提煉每個(gè)行業(yè)的有用信息,促進(jìn)每個(gè)行業(yè)的利益最大化。
本文以電商平臺(tái)為研究對(duì)象,只有通過數(shù)據(jù)挖掘?qū)τ脩舻姆治觯拍芨玫貙?shí)現(xiàn)用戶信息的數(shù)據(jù)化、程序化,才能精準(zhǔn)營銷,一方面對(duì)于消費(fèi)者來說,可以更直觀地享受消費(fèi)過程,另一方面對(duì)于銷售者來說,可以更容易把控用戶的喜好,抓住用戶,培養(yǎng)用戶習(xí)慣,提高產(chǎn)業(yè)的服務(wù)和收益。所以數(shù)據(jù)挖掘?qū)τ谔嵘娚唐脚_(tái)的用戶黏度又有著其非凡的意義,能夠促進(jìn)電商平臺(tái)的發(fā)展,促進(jìn)電子商務(wù)的發(fā)展。
參考文獻(xiàn):
[1]錢程,陽小蘭,朱福喜.基于Python的網(wǎng)絡(luò)爬蟲技術(shù)[J].黑龍江科技信息,2016(36):273.
[2]謝克武.大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲技術(shù)[J].電子制作,2017(9):44-45.
[3]李昊,張敏,馮登國,等.大數(shù)據(jù)訪問控制研究[J].計(jì)算機(jī)學(xué)報(bào),2017(1):72-91.
[4]胡一.基于大數(shù)據(jù)的電子商務(wù)個(gè)性化信息推薦服務(wù)模式研究[D].吉林大學(xué),2015.
[5]濮文強(qiáng),曹磊,夏斌.基于Django框架的關(guān)鍵詞排名監(jiān)控系統(tǒng)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2017,36(20).
[6]朱蔚恒,陳健,印鑒.數(shù)據(jù)挖掘在電子商務(wù)中的應(yīng)用[J].計(jì)算機(jī)工程,2002,28(8):73-74.