• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于python的Web大數(shù)據(jù)采集和數(shù)據(jù)分析

      2018-11-26 09:32肖樂叢天偉嚴(yán)衛(wèi)
      電腦知識與技術(shù) 2018年22期
      關(guān)鍵詞:大數(shù)據(jù)

      肖樂 叢天偉 嚴(yán)衛(wèi)

      摘要:該設(shè)計使用python語言作為開發(fā)語言,主要采用了兩個框架:Scrapy和Django,用Scrapy來實(shí)現(xiàn)數(shù)據(jù)的采集技術(shù),讓數(shù)據(jù)采集效率更高,錯誤率低等;用Django來實(shí)現(xiàn)web網(wǎng)頁展示數(shù)據(jù)可視化功能,使用戶能更加清晰、透明的了解到通過數(shù)據(jù)分析生活未來發(fā)展的趨勢,以及解決社會存在的某些問題等等。

      關(guān)鍵詞:Python;大數(shù)據(jù);Scrapy;Django

      中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2018)22-0009-03

      Abstract: This design mainly adopts two frameworks: Scrapy and Django, using Django to achieve the web page display data visualization function, users can be more clear and transparent to the future through the development trend of life data analysis, and solve some social problems. Using Scrapy to achieve data acquisition technology, data acquisition efficiency is higher, error rate is low, the framework can also extend functions and expand protocols to meet more complex needs.

      Key words: Python; Scrapy; Big data; Django

      1 背景

      隨著互聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,我們所生活的世界正在被數(shù)據(jù)所淹沒,而這些數(shù)據(jù)經(jīng)過精心的系統(tǒng)整合所形成大數(shù)據(jù),開始展現(xiàn)出其從量變到質(zhì)變的價值時代[1]。

      采集是大數(shù)據(jù)價值挖掘最重要的一環(huán),其后的分析挖掘都建立在采集的基礎(chǔ)上。數(shù)據(jù)的采集有基于物聯(lián)網(wǎng)傳感器的采集,也有基于網(wǎng)絡(luò)信息的數(shù)據(jù)采集。比如在智能交通中,數(shù)據(jù)的采集有基于GPS的定位信息采集、基于交通攝像頭的視頻采集,基于交通卡口的圖像采集,基于路口的線圈信號采集等[2]。本文是研究互聯(lián)網(wǎng)上的數(shù)據(jù)采集,是對各類網(wǎng)絡(luò)媒介,如搜索引擎、新聞網(wǎng)站、論壇、微博、博客、電商網(wǎng)站等的各種頁面信息和用戶訪問信息進(jìn)行采集,采集的內(nèi)容主要有文本信息、URL、訪問日志、日期和圖片等。之后把采集到的各類數(shù)據(jù)進(jìn)行清洗、過濾、去重等各項預(yù)處理并分類歸納存儲。對這些數(shù)據(jù)進(jìn)行智能處理,從中分析和挖掘出有價值的信息[3]。

      該設(shè)計基于python語言,運(yùn)用scrapy框架進(jìn)行對淘寶,京東等網(wǎng)站進(jìn)行數(shù)據(jù)采集,達(dá)到更快速和高層次的屏幕抓取和web抓取數(shù)據(jù),用NumPy進(jìn)行數(shù)據(jù)的清理,過濾,子集構(gòu)造,轉(zhuǎn)換,排序,描述統(tǒng)計等操作,通過matplotlib進(jìn)行數(shù)據(jù)可視化分析。運(yùn)用Django框架把數(shù)據(jù)圖表顯示在web頁面上[4]。

      2 Web大數(shù)據(jù)采集技術(shù)

      2.1 Scrapy爬蟲設(shè)計

      在爬取數(shù)據(jù)之前首先要對網(wǎng)站進(jìn)行分析,獲取初始的URL。獲取的方法可以通過抓包工具對要爬取的內(nèi)容進(jìn)行分析, 當(dāng)找到數(shù)據(jù)地址后,對數(shù)據(jù)地址做分析,每獲取一個新的URL,先確定這個URL是否有效,把沒有用的數(shù)據(jù)去掉,爬取完后確定下一步的爬取URL,將新的URL放入爬取隊列中,如此循環(huán)下去,直到滿足設(shè)定的條件,結(jié)束爬取網(wǎng)絡(luò)數(shù)據(jù),流程如圖1所示。

      打開google,輸入www.taobao.com,抓包工具上會出現(xiàn)很多文件和json包還有圖片,找到想要的數(shù)據(jù),在抓包工具里找到相應(yīng)的json包以后就把這個json的地址copy出來,這樣就得到了想要的數(shù)據(jù)地址。

      當(dāng)找到數(shù)據(jù)地址后,要進(jìn)行對數(shù)據(jù)地址做分析,把沒有用的數(shù)據(jù)去掉。

      2.2 數(shù)據(jù)的清洗

      抓取到數(shù)據(jù)后,由于數(shù)據(jù)里有許多“臟數(shù)據(jù)”,所以要對數(shù)據(jù)進(jìn)行缺失值的處理和數(shù)據(jù)異常值的清洗處理。通過numpy的庫里的函數(shù)describe()來得出這堆數(shù)據(jù)里的極大值,平均值,中位值,極小值,方差等數(shù)據(jù)來分析數(shù)據(jù)里有哪些缺失值或者是異常值。

      抓取到的原始數(shù)據(jù),在數(shù)據(jù)清洗前價格與銷量的散點(diǎn)分布情況如圖3所示,橫坐標(biāo)代表商品價格,縱坐標(biāo)代表銷售量。發(fā)現(xiàn)商品價格0-500元之間有幾個商品的銷售量在60000-100000之間,分析得出這些商品存在異常;商品價格在1500-2000元之間有幾個商品的銷售量是0,可以肯定這是殘缺數(shù)據(jù),一般情況是把中位數(shù)作為補(bǔ)給數(shù)據(jù)填補(bǔ)給缺少的數(shù)據(jù),這樣可以讓數(shù)據(jù)能更加的合理化,關(guān)聯(lián)性更加的高。

      將這些異常值進(jìn)行數(shù)據(jù)清洗后得到圖4合理的價格與銷量分布散點(diǎn)分布可視化圖。

      當(dāng)把數(shù)據(jù)清洗完成后,還需要進(jìn)行數(shù)據(jù)的轉(zhuǎn)換、規(guī)劃等操作,方便之后的數(shù)據(jù)分析。數(shù)據(jù)轉(zhuǎn)換和規(guī)劃后結(jié)果如圖5所示,圖中可以看出有五千多種商品分類,和某個時間段內(nèi),各種商品的銷售總數(shù)和銷售總產(chǎn)值。

      3可視化數(shù)據(jù)分析

      對于數(shù)據(jù)的可視化設(shè)計采用matplotlib工具,運(yùn)用Django框架把數(shù)據(jù)圖表顯示在web頁面上。

      3.1 不同價格區(qū)間商品的平均銷量分析

      圖6分別對商品價格區(qū)間在0~13元,0~28元,0~49元等價格區(qū)間進(jìn)行統(tǒng)計銷量,結(jié)果發(fā)現(xiàn):價格區(qū)間在0~50元之間小零食商品的銷量都在3000~5000之間,差別不是很大,當(dāng)價格超過50元,銷量開始明顯下降,分析得出消費(fèi)者對于20~30元之間的小零食類商品最受喜愛。一方面是這個價格的商品符合大眾需求,另一方面這個價格滿足淘寶包郵策略所以銷售數(shù)量最多。電商可以在其他商品或者價格策略上得到相應(yīng)的啟發(fā),改變銷售策略,獲得最大收益。

      3.2 不同地區(qū)的同一商品銷量分析

      圖7是在不同地區(qū)對同一商品的銷量統(tǒng)計,其中銷量排名前三的分別是安徽,河南,湖北,上海作為消費(fèi)大都市,卻只排在了第七位,由此分析出對于零食的需求量主力軍并不在南方,而是在中部地區(qū)。但從商品分布圖8統(tǒng)計結(jié)果來看:上海浙江等地的商品數(shù)量排名靠前,而之前的安徽,河南等地區(qū)的商品數(shù)量確排名不高,所以接下來的銷售商考慮的策略應(yīng)該是盡量減少在上海和浙江等地區(qū)的商品數(shù)量存貨,提高安徽,河南等地區(qū)的商品數(shù)量,達(dá)到市場供需平衡。

      4 結(jié)束語

      隨著大數(shù)據(jù)應(yīng)用越來越廣泛,如何應(yīng)用大數(shù)據(jù)更好地了解客戶以及他們的愛好和行為是大數(shù)據(jù)研究的關(guān)鍵領(lǐng)域。本文研究如何從互聯(lián)網(wǎng)上采集相關(guān)數(shù)據(jù),讓數(shù)據(jù)采集更高效,把采集到的各類數(shù)據(jù)進(jìn)行清洗、過濾、歸納存儲,將有用的數(shù)據(jù)進(jìn)行統(tǒng)計和可視化分析,從中分析和挖掘出有價值的信息。

      參考文獻(xiàn):

      [1] 周蘇, 王文. 大數(shù)據(jù)導(dǎo)論[M]. 北京: 清華大學(xué)出版社, 2016.

      [2] 李聯(lián)寧. 大數(shù)據(jù)技術(shù)及應(yīng)用教程[M]. 北京: 清華大學(xué)出版社, 2016.

      [3] 王星. 大數(shù)據(jù)分析:方法與應(yīng)用[M]. 2版. 北京: 清華大學(xué)出版社, 2013.

      [4] Wesly McKinney. Python大數(shù)據(jù)分析基礎(chǔ)教程[M]. OReilly Media, 2013.

      【通聯(lián)編輯:謝媛媛】

      猜你喜歡
      大數(shù)據(jù)
      大數(shù)據(jù)環(huán)境下基于移動客戶端的傳統(tǒng)媒體轉(zhuǎn)型思路
      无极县| 冷水江市| 荥阳市| 木兰县| 东光县| 扶绥县| 通城县| 荔浦县| 师宗县| 孟村| 广元市| 阿拉善盟| 资源县| 册亨县| 禹城市| 泗水县| 莱阳市| 昌图县| 兰西县| 沙湾县| 莱西市| 武陟县| 新田县| 普洱| 浦东新区| 宁晋县| 淮阳县| 加查县| 兴海县| 天祝| 鱼台县| 农安县| 高陵县| 普兰县| 寿阳县| 苏尼特左旗| 保靖县| 米脂县| 江源县| 郑州市| 锡林浩特市|