版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
目錄
1引言..............................................................1
1.1項(xiàng)目背景...................................................1
1.2開發(fā)環(huán)境與工具.............................................2
1.2.1Python概述.............................................2
1.2.2JupyterNotebook概述...................................2
1.2.3Python第三方庫簡介.....................................2
2需求分析..........................................................3
2.1可行性需求分析.............................................3
2.2采集目標(biāo)功能分析...........................................4
2.3關(guān)鍵技術(shù)分析...............................................4
2.3.1網(wǎng)絡(luò)爬蟲技術(shù)...........................................4
2.3.2文件存取技術(shù)...........................................4
2.3.3可視化技術(shù).............................................5
3數(shù)據(jù)采集..........................................................5
3.1采集頁面分析...............................................5
3.2字段分析...................................................8
3.3編程實(shí)現(xiàn)...................................................9
4數(shù)據(jù)清洗與處理...................................................12
4.1數(shù)據(jù)清洗..................................................12
4.2數(shù)據(jù)儲(chǔ)存..................................................14
5數(shù)據(jù)統(tǒng)計(jì)與分析...................................................15
5.1數(shù)據(jù)準(zhǔn)備..................................................15
5.2數(shù)據(jù)展示..................................................16
5.2.1Notebook數(shù)據(jù)分析與展示................................16
5.2.2按照生產(chǎn)廠家制作詞云圖................................21
5.2.3根據(jù)藥品劑型進(jìn)行統(tǒng)計(jì)..................................22
5.2.4依照藥品售價(jià)區(qū)間進(jìn)行統(tǒng)計(jì)..............................23
I
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
5.3綜述......................................................24
6小結(jié).............................................................25
參考資料............................................................26
II
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
基于Python的藥房網(wǎng)商城數(shù)據(jù)采集與分析
1引言
時(shí)光荏苒,我們的祖國已經(jīng)進(jìn)入了一個(gè)高速發(fā)展的階段。百年未有之大變局,
正是我們這一代年輕人應(yīng)該抓住的時(shí)機(jī)和機(jī)會(huì)。喬布斯的一次發(fā)布會(huì),開啟了移
動(dòng)互聯(lián)網(wǎng)時(shí)代的來臨,信息大爆炸讓各種技術(shù)應(yīng)用的隨需求不斷誕生,如雨后春
筍一般開始冒尖兒。云、大、物、智等計(jì)算機(jī)互聯(lián)網(wǎng)技術(shù)在當(dāng)下從百姓民生的
各個(gè)方面提供了智能生活的技術(shù)基礎(chǔ)。而廣大人民群眾日常的購物、出行等產(chǎn)
生的數(shù)據(jù)也讓為我們這些技術(shù)工作者提供的海量的數(shù)據(jù)源頭,讓我們有東西去
學(xué)習(xí)和開發(fā),然后應(yīng)用。
衣食住行、衛(wèi)生醫(yī)療等方面產(chǎn)生的海量數(shù)據(jù)等待開發(fā)的價(jià)值愈來愈大。我
們這一代也踩在了信息革命的門檻上,逐漸進(jìn)入到一個(gè)信息漫天飛舞的時(shí)代。大
量IT工作者鼓吹風(fēng)口一詞,引入許多人往這一行業(yè)涌入。大數(shù)據(jù)從業(yè)者都明白,
海量數(shù)據(jù)中隱藏的寶藏等待有緣人也可以說是有心人去發(fā)掘,數(shù)據(jù)科學(xué)及大數(shù)
據(jù)技術(shù)也成為目前信息技術(shù)領(lǐng)域的一個(gè)比較熱門的分支,大家都覺得他是未來!
1.1項(xiàng)目背景
網(wǎng)上藥店為患者提供了比線下門店更多的選擇,為患者帶來了切實(shí)的便利,
通過線上購藥,患者可以極大地節(jié)省時(shí)間和交通成本,同時(shí),在線醫(yī)療和網(wǎng)上
藥店有效對(duì)醫(yī)院門診進(jìn)行了分流,一定程度上緩解了看病難的現(xiàn)狀。人們充分
體會(huì)到了電子商務(wù)多方面的優(yōu)勢(shì),公眾對(duì)藥品電子商務(wù)及網(wǎng)上藥店的經(jīng)營有著
較大的需求與期待。
然而,藥品作為一種商品具有其特殊性,藥品的質(zhì)量安全和銷售合規(guī)性與
人的生命健康息息相關(guān),而互聯(lián)網(wǎng)一方面能夠增強(qiáng)信息獲取的便利性,提高流
通效率,更好地滿足消費(fèi)者的用藥需求;另一方面也具有隱蔽性和虛擬性,加
上賣家資質(zhì)難以確定、監(jiān)管難度大、處方審核問題、跨地域帶來的配送隱患等
安全隱患[1]。
涉及到藥品種類信息有很多,本次項(xiàng)目需要對(duì)網(wǎng)頁進(jìn)行解析。然后通過
Python爬蟲的手段批量獲取項(xiàng)目想要的資料。
此次項(xiàng)目就是針對(duì)普通百姓對(duì)藥品的需求,然后爬取藥房網(wǎng)商城的中西藥
品數(shù)據(jù),對(duì)其進(jìn)行處理,分析,然后可視化。繁雜的數(shù)據(jù)經(jīng)過清洗加分析后,一目
了然的將結(jié)果呈現(xiàn)在高層眼前,給普通百姓提供高性價(jià)比、正規(guī)的藥品品牌,從
1
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
而進(jìn)貨哪些藥品[2],最后做相對(duì)正確的決策。所以此次項(xiàng)目部分包含數(shù)據(jù)爬取、
清洗處理、儲(chǔ)存、可視化[3]。
1.2開發(fā)環(huán)境與工具
1.2.1Python概述
Python是一門編程語言,通過這門計(jì)算機(jī)能夠理解的語言,可以通過編程
讓電腦完成的復(fù)雜的任務(wù),就像開發(fā)一個(gè)應(yīng)用程序一樣,比如計(jì)算器應(yīng)用,可
以幫助項(xiàng)目的進(jìn)程進(jìn)行一些復(fù)雜計(jì)算任務(wù)[4][5]。
比如統(tǒng)計(jì)考試成績、對(duì)班級(jí)成績表做一些分析,當(dāng)然這些工作通常使用
Excel也能完成。但是Python能夠做的遠(yuǎn)遠(yuǎn)不止是這些,關(guān)鍵還是在于想要做
什么。工作中大量繁雜重復(fù)的工作,大多數(shù)時(shí)候可以使用Python自動(dòng)化幫忙完
成,從而提高工作效率。
1.2.2JupyterNotebook概述
Jupyternotebook簡單的說,是一個(gè)編程工具,用來做python等語言的編
程工作[6]。
Jupyternotebook是一個(gè)開源Web應(yīng)用程序,允許您創(chuàng)建和共享包含實(shí)時(shí)
代碼、方程式、可視化和敘述文本的文檔。用途包括:數(shù)據(jù)清理和轉(zhuǎn)換,數(shù)值
模擬,統(tǒng)計(jì)建模,數(shù)據(jù)可視化,機(jī)器學(xué)習(xí)等等。
Jupyternotebook是以網(wǎng)頁的形式打開,可以在網(wǎng)頁頁面中直接編寫代碼
和運(yùn)行代碼,代碼的運(yùn)行結(jié)果也會(huì)直接在代碼塊下顯示的程序。如在編程過程
中需要編寫說明文檔,可在同一個(gè)頁面中直接編寫,便于作及時(shí)的說明和解釋。
1.2.3Python第三方庫簡介
Requests:最友好的網(wǎng)絡(luò)爬蟲功能庫,是Python實(shí)現(xiàn)的簡單易用的HTTP庫,
使用起來比urllib更簡潔很多,Python第三方庫在使用前要先進(jìn)行安裝。
Re:正則表達(dá)式解析和處理功能庫,里面包含了多種字符串匹配的方法。
Csv:csv屬于python中的內(nèi)置模塊,它能夠讀取csv格式的文件或者將數(shù)
據(jù)存入到csv表格中。并且csv文件是表格和數(shù)據(jù)庫中常見的文件操作格式。
NumPy庫是Python數(shù)據(jù)分析的基礎(chǔ),是處理數(shù)組的Python庫,NumPy庫的
數(shù)據(jù)結(jié)構(gòu)比Python自帶的更加高效[7]。
Pandas:是python數(shù)據(jù)分析高層次應(yīng)用庫,是一種Python數(shù)據(jù)處理庫,常
2
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
用于數(shù)據(jù)分析和統(tǒng)計(jì)學(xué)任務(wù)。Pandas提供了高效的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分析工具,
可以非常方便地完成數(shù)據(jù)預(yù)處理、清洗、重組、聚合、分組、統(tǒng)計(jì)、可視化等
任務(wù)[7]。
Xpath:全稱XMLPathLanguage,即XML路徑語言,它是一門在XML文檔
中查找信息的語言。XPath最初設(shè)計(jì)是用來搜尋XML文檔的,但是它同樣適用于
HTML文檔的搜索[8]。這此項(xiàng)目使用的方法就是使用xpath解析網(wǎng)頁,當(dāng)然
還有beautifulsoup[9]方法可用解析網(wǎng)頁。
Matplotlib:是一種Python數(shù)據(jù)可視化庫,可以用于生成各種類型的靜態(tài)、
動(dòng)態(tài)、交互式圖表,非常適合于數(shù)據(jù)分析和挖掘領(lǐng)域。該庫還提供了簡單、直
接的繪圖接口,支持各種繪圖類型,如折線圖、散點(diǎn)圖、柱狀圖、餅圖、等高
線圖、三維圖等,并提供了各種繪圖配置選項(xiàng)和樣式。主要是偏向于二維繪圖
[10]。
Wordcloud、Scipy、Jieba:生成中文詞云的。
Pylab:它能設(shè)置畫圖讓其能顯示中文。
2需求分析
2.1可行性需求分析
1、技術(shù)可行性
通過抓包分析發(fā)現(xiàn)藥房網(wǎng)商城網(wǎng)站藥品信息頁面的數(shù)據(jù)是動(dòng)態(tài)傳輸?shù)?所
以本項(xiàng)目準(zhǔn)備工作的第一步就是通過瀏覽器控制臺(tái)獲取請(qǐng)求和其參數(shù)。然后就
可以得到網(wǎng)頁面數(shù)據(jù)的返回值。
為保障此次項(xiàng)目的技術(shù)可行性,需通過程序PyChram內(nèi)置爬蟲爬取出來的
原始數(shù)據(jù)暫時(shí)以csv格式儲(chǔ)存起來,在后續(xù)的數(shù)據(jù)預(yù)處理和可視化中再進(jìn)行調(diào)
用。本此項(xiàng)目的最后是將準(zhǔn)確的數(shù)據(jù)存入本地硬盤中做備份儲(chǔ)存。
2、項(xiàng)目可行性
教育、住房、醫(yī)療一直是壓在人民心頭的三座大山,也是我們中國社會(huì)主義
發(fā)展道路上的巨大難題。有關(guān)于三者的討論于新聞從未斷絕過,每一次發(fā)表關(guān)于
教育、住房、醫(yī)療等領(lǐng)域的話題時(shí),其話題熱度往往能沖上熱搜榜首。
本次項(xiàng)目通過采集比較權(quán)威的藥房網(wǎng)商城網(wǎng)站內(nèi)的數(shù)據(jù),來分析我國進(jìn)出
口的藥品信息。此次項(xiàng)目也將從藥品名稱、劑型、生產(chǎn)廠家等方面對(duì)其進(jìn)行深
度剖析,分析出有價(jià)值的信息,最后將其可視化最后根據(jù)結(jié)果得出結(jié)論是:藥品
種類多,所以對(duì)癥醫(yī)治的藥品也就多,在眾多藥品中不僅要選擇有效的藥品也
3
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
更要在眾多藥品中選擇價(jià)格實(shí)惠親民的藥品,這個(gè)項(xiàng)目就能很好的為普通老百
姓提供幫助,既能選擇對(duì)癥藥品,又能減少不必要的開支。
2.2采集目標(biāo)功能分析
本次項(xiàng)目的數(shù)據(jù)集的來源是藥房網(wǎng)商城網(wǎng)站,是通過python爬取藥房網(wǎng)商
城-中醫(yī)藥所有藥品的信息。數(shù)據(jù)清洗后共4060條記錄,爬取完成后盡可能的檢
查數(shù)據(jù)的準(zhǔn)確性,確定爬取出來的數(shù)據(jù)無誤并且是屬于藥房網(wǎng)商城實(shí)時(shí)存在的
藥品信息。
分析藥房網(wǎng)商城網(wǎng)站網(wǎng)頁信息,明確此次項(xiàng)目需要爬取的藥品參數(shù)有藥品
名稱、價(jià)格、規(guī)格、劑型、批準(zhǔn)文號(hào)、有多少商家在售、生產(chǎn)廠商等數(shù)據(jù),在對(duì)
原始數(shù)據(jù)進(jìn)行預(yù)處理后本項(xiàng)目再會(huì)對(duì)其數(shù)據(jù)進(jìn)行多個(gè)維度的分析。例如,藥品的
價(jià)格對(duì)其進(jìn)行分析,查看同款藥品的價(jià)格差距及廠家名稱,以便于民眾根據(jù)自身
所需購買藥品。
2.3關(guān)鍵技術(shù)分析
2.3.1網(wǎng)絡(luò)爬蟲技術(shù)
網(wǎng)絡(luò)爬蟲技術(shù)是一種利用程序自動(dòng)獲取互聯(lián)網(wǎng)信息的技術(shù)。它可以自動(dòng)地
遍歷互聯(lián)網(wǎng)上的各種網(wǎng)頁,從中提取出有用的數(shù)據(jù)并加以處理。網(wǎng)絡(luò)爬蟲技術(shù)
的基本原理是通過發(fā)送http請(qǐng)求獲取指定url頁面的html代碼,然后解析該
頁面的結(jié)構(gòu)和內(nèi)容,再從中提取出需要的信息,例如文本、圖片、鏈接等等。
常用的網(wǎng)絡(luò)爬蟲工具包括python語言中的scrapy和beautifulsoup等,也
可通過編寫自己的程序?qū)崿F(xiàn)爬蟲功能[11][12]。
但是需要每個(gè)人都注意的是,任何時(shí)候在使用網(wǎng)絡(luò)爬蟲時(shí),需要尊重被爬
取網(wǎng)站的隱私政策和版權(quán)聲明,并且遵守相關(guān)法律法規(guī),以免侵權(quán)引起不必要
的糾紛。
2.3.2文件存取技術(shù)
Pandas中使用csv模塊讀取文檔如圖2-1顯示:
4
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖2-1Pandas中使用csv模塊
Python中使用for循環(huán)遍歷讀取文檔如圖2-2顯示:
圖2-2for循環(huán)遍歷讀取文檔
2.3.3可視化技術(shù)
本次項(xiàng)目中僅僅只是將得到的數(shù)據(jù)用很簡單的可視化手段實(shí)現(xiàn)數(shù)據(jù)可視化,
具體的就是用python第三方庫matpoltlab去進(jìn)行可視化,在matplotlab包含
的許多模塊中使用generate、pie、bar函數(shù)可以分別生成詞云圖、餅圖和條形
圖。因此可以很好的將數(shù)據(jù)高效率的表現(xiàn)出來,可視化圖形呈現(xiàn)出來后對(duì)于結(jié)果
自然一目了然,然后得出結(jié)論[13]。
3數(shù)據(jù)采集
3.1采集頁面分析
本次項(xiàng)目首先通過Edge瀏覽器搜索藥房網(wǎng)商城的官方網(wǎng)頁
(如圖3-1所示),然后找到中西藥品目錄集頁面觀察其
中URL為:/catalog-1(如圖3-2所示),然后點(diǎn)擊頁面
5
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
下方的下一頁按鈕,同時(shí)觀察URL,發(fā)現(xiàn)URL發(fā)生變化:(如圖3-3所示)
/catalog-1/p2。
由此可以推斷藥房網(wǎng)商城中中西藥品中每一頁的url最后一個(gè)數(shù)字對(duì)應(yīng)頁
碼,且最多一百頁,即使輸入大于100的數(shù)字也只會(huì)顯示尾頁。(如圖3-4所
示)
圖3-1數(shù)據(jù)網(wǎng)址頁面
圖3-2中西藥品頁面
6
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖3-3單擊下一頁顯示頁面
圖3-4頁碼測(cè)試
續(xù)圖3-4頁碼測(cè)試
按F12調(diào)出開發(fā)者工具,或者在空白處單擊右鍵呼出菜單選擇檢查選項(xiàng)也
可調(diào)出開發(fā)者工具,刷新頁面,(如圖3-5所示)。
7
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖3-5開發(fā)者工具
利用全局搜索工具定位所需數(shù)據(jù)位置,點(diǎn)擊開發(fā)者工具上面的Headers(標(biāo)
頭)字段,分析這是個(gè)什么請(qǐng)求,發(fā)現(xiàn)這個(gè)是一個(gè)GET請(qǐng)求。
確定無誤后接著找出這個(gè)網(wǎng)頁的Cookie、Host和User-Agent:(如圖3-6所
示)
圖3-6Cookie、Host和User-Agent
3.2字段分析
在獲取此次項(xiàng)目所需資料時(shí),首先來到網(wǎng)頁面打開網(wǎng)頁的選擇欄,然后將選
8
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
擇欄目定位到藥品集中的位置也就是定位到本次項(xiàng)目所需求的資料數(shù)據(jù)所在位
置,然后跳出開發(fā)者工具頁面刷新一下頁面再進(jìn)入,點(diǎn)擊開發(fā)者工具界面上方的
數(shù)據(jù)預(yù)覽按(Ctrl+Shift+C)如圖3-7,可以看到本次項(xiàng)目需要的數(shù)據(jù)信息都是呈
現(xiàn)在這個(gè)網(wǎng)頁面:
在每一個(gè)dic標(biāo)簽下有多個(gè)a標(biāo)簽(每一個(gè)dic標(biāo)簽都對(duì)應(yīng)一件藥品),
而a標(biāo)簽內(nèi)的字符內(nèi)容就是本次項(xiàng)目所需要的字段,如藥名、規(guī)格、批準(zhǔn)文號(hào)、
生產(chǎn)廠家等都可以通過xpath方式獲取這些字段的路徑。
因?yàn)槊考幤范即嬖趫D片,而由于圖片格式的特殊性,所以此次項(xiàng)目將使
用xpath方法獲取數(shù)據(jù)時(shí)可以篩選過濾掉這些不必要的數(shù)據(jù)。每一頁格式的原
因,所以在編寫程序代碼時(shí),需要重復(fù)獲取響應(yīng)數(shù)據(jù),然后依次寫入到csv格
式的文件當(dāng)中。
圖3-7分析數(shù)據(jù)類型頁面
3.3編程實(shí)現(xiàn)
導(dǎo)入所需庫。(如圖3-8所示)
9
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖3-8導(dǎo)入所需庫頁面
設(shè)置請(qǐng)求頭,偽裝成瀏覽器訪問服務(wù)器。(如圖3-9所示)
圖3-9請(qǐng)求頭內(nèi)容頁面
代碼實(shí)現(xiàn)如下(圖3-10-1至3-10-3所示):
圖3-10-1代碼展示
10
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖3-10-2代碼展示
圖3-10-3代碼展示
源代碼.zip
11
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
4數(shù)據(jù)清洗與處理
在對(duì)數(shù)據(jù)的處理中數(shù)據(jù)清洗這個(gè)步驟非常重要關(guān)鍵,先對(duì)數(shù)據(jù)進(jìn)行清洗,
處理掉敏感信息,統(tǒng)一格式什么的,再根據(jù)需求對(duì)數(shù)據(jù)進(jìn)行處理。有個(gè)很著名
的論斷:一個(gè)數(shù)據(jù)科學(xué)家80%的時(shí)間花在了數(shù)據(jù)清洗,20%的時(shí)間花在算法模型
上面。數(shù)據(jù)清洗很像一個(gè)篩沙子的過程,通過整合篩選,篩出金子般的數(shù)據(jù)洞
察/模型預(yù)測(cè)。不然的話,建模分析就是garbagein,garbageout(垃圾
進(jìn),垃圾出),沒有任何意義,也就沒有利用價(jià)值。數(shù)據(jù)清洗主要價(jià)值在以下
三個(gè)方面:
1、合:將幾個(gè)數(shù)據(jù)源融合在一起,把分析視野打開。這當(dāng)中就會(huì)涉及字段
名稱不匹配、字段維度不一致等等問題。
2、增:彌補(bǔ)數(shù)據(jù)缺失;增加數(shù)據(jù)指標(biāo)以提升建模準(zhǔn)確度和商業(yè)洞察。
3、刪:去掉不必要的噪音和錯(cuò)誤數(shù)據(jù)。把以上數(shù)據(jù)清洗做完就已經(jīng)完成了
大部分的分析建模工作量[13][14]。
獲得龐大的數(shù)據(jù)集之后因?yàn)樾枰獙?duì)數(shù)據(jù)進(jìn)行預(yù)處理,也就是所謂的清洗和
檢查,確定爬取過來的數(shù)據(jù)是否存在無效值和確實(shí)值,要保證數(shù)據(jù)的一致性,這
個(gè)對(duì)于信息質(zhì)量的評(píng)估是一項(xiàng)很重要的任務(wù)。不僅如此,而且還需要將數(shù)據(jù)進(jìn)行
有理化和有序化,這樣子能夠在數(shù)據(jù)調(diào)用共享過程中方便很多開發(fā)人員對(duì)數(shù)據(jù)
信息的使用。
本次項(xiàng)目中首先需要將爬下來的數(shù)據(jù)和網(wǎng)頁原數(shù)據(jù)進(jìn)行比對(duì),并且檢查是
否出現(xiàn)空值、錯(cuò)值,還有數(shù)據(jù)的位置是否正確。根據(jù)項(xiàng)目不同的需求對(duì)數(shù)據(jù)進(jìn)行
不同的處理。
4.1數(shù)據(jù)清洗
導(dǎo)入pandas庫,讀取源文件。(如圖4-1所示)
12
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖4-1數(shù)據(jù)清洗準(zhǔn)備頁面
將源數(shù)據(jù)按價(jià)格進(jìn)行排序。(如圖4-2所示)
圖4-2價(jià)格降序排序頁面
經(jīng)過比對(duì)和檢查,發(fā)現(xiàn)價(jià)格一欄的數(shù)據(jù)金額存在0元,很顯然這是些錯(cuò)誤的
數(shù)據(jù),然后需要通過篩選的方法顯示出這些數(shù)據(jù)。(如圖4-3所示)
13
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖4-3異常數(shù)據(jù)信息
刪除價(jià)格為0元的藥品信息,最終還剩余4060條數(shù)據(jù)。(如圖4-4所示)
圖4-4刪除異常信息
至此已初步清洗了一遍數(shù)據(jù),以便于接下來的數(shù)據(jù)分析。
4.2數(shù)據(jù)儲(chǔ)存
數(shù)據(jù)儲(chǔ)存的方法有很多種,常見得可以直接用記事本格式儲(chǔ)存(txt),或者
直接用其他文件的形式儲(chǔ)存csv、excel、json等,本次項(xiàng)目使用到的是在python
中將數(shù)據(jù)存儲(chǔ)至csv(Comma-SeparatedValues)格式的文件中。
如圖4-5、4-6所示:
14
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖4-5將源數(shù)據(jù)存儲(chǔ)為csv格式
圖4-6將數(shù)據(jù)導(dǎo)出到本地
5數(shù)據(jù)統(tǒng)計(jì)與分析
5.1數(shù)據(jù)準(zhǔn)備
為更好的做好接下來的工作,先把原先爬取下來的數(shù)據(jù)以json文件格式存
儲(chǔ),以及存取的csv文件中。(如圖5-1所示)
15
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-1源文件存為json格式
續(xù)圖5-1源文件存為json格式
5.2數(shù)據(jù)展示
5.2.1Notebook數(shù)據(jù)分析與展示
在前面第4.1章節(jié)中已經(jīng)進(jìn)行過數(shù)據(jù)清洗了(如圖5-2所示),因此現(xiàn)將
應(yīng)對(duì)各種用途來做出如下幾點(diǎn)分析:
16
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
1、查看最貴的藥品金額。(如圖5-3所示)
2、查看最便宜的藥品金額。(如圖5-4所示)
3、為便于普通老百姓的生活開支,本次項(xiàng)目可以篩選出藥品合適的價(jià)位供
普通人挑選。(如圖5-5所示)
4、如果數(shù)據(jù)信息過于冗雜,本次項(xiàng)目還可以顯示部分需要的藥品信息。
(如圖5-6所示)
5、如果想要在篩選的信息中查找需要的藥品,只需搜索即可,(如圖5-7
所示)也可以通過搜索查看需要了解這款藥品的全部信息。(如圖5-8所示)
6、在搜索需要的產(chǎn)品時(shí),不僅可以按藥名,也可以按生產(chǎn)廠家查找等…
(如圖5-9所示)
7、要想在通過數(shù)據(jù)初步篩選后了解其劑型的種類只需先判斷是否存在重復(fù)
數(shù)據(jù)然后再刪除即可(如圖5-10所示),最后可以看到在3759條數(shù)據(jù)中僅有
122種劑型。
17
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-2jupyternotebook中數(shù)據(jù)清洗
18
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-3最貴藥品金額
圖5-4最便宜藥品金額
圖5-5查看40元以內(nèi)的藥品信息
圖5-6顯示40元以內(nèi)藥品的部分信息
19
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-7查找藥品的部分信息
圖5-8查看藥品的全部信息
圖5-9按指定條件查看信息
20
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-10統(tǒng)計(jì)劑型種類
5.2.2按照生產(chǎn)廠家制作詞云圖
將在所有數(shù)據(jù)中每一條數(shù)據(jù)生產(chǎn)廠家的字段數(shù)據(jù)進(jìn)行整合匯總處理,然后
統(tǒng)計(jì)其出現(xiàn)的頻率,最后生成特定序列,通過特定序列里面的數(shù)據(jù)再按照詞頻生
成詞云圖,如圖5-11中可以看出“北京同仁堂股份有限公司同仁堂制藥廠”和
“北京同仁堂科技發(fā)展股份有限公司制藥廠”這兩個(gè)字段在圖片中特別顯眼,這
表示其出現(xiàn)的頻率非常高,通過關(guān)鍵詞“北京同仁堂”搜索發(fā)現(xiàn)都是同仁堂集
團(tuán)公司旗下的子公司,其次就是山西華康藥業(yè)股份有限公司。在藥房網(wǎng)商城的
網(wǎng)站上出現(xiàn)多次也足以說明他們公司生產(chǎn)藥品是通過國家認(rèn)證的并且質(zhì)量過硬
合格的產(chǎn)品。
21
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-11詞云圖展示頁面
5.2.3根據(jù)藥品劑型進(jìn)行統(tǒng)計(jì)
圖5-12餅圖展示頁面
從圖5-12中可以看出來藥房網(wǎng)商城進(jìn)口的藥品大多數(shù)都是以片劑為主,其
22
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
次就是薄膜衣片劑,各種膠囊、顆粒等,另外一些藥品的劑型都是占極少數(shù),
為更好、更直觀的看出統(tǒng)計(jì)結(jié)果,本次項(xiàng)目將把這些非主流的藥品劑型全部集
存放在“其他”中。那么藥品為什么要做成劑型呢?
這里來簡單概述一下,一部分原因是為了讓人們更易于服用,達(dá)到更好的
藥效,比如說加一個(gè)糖衣,制成片劑,讓藥不那么苦,讓藥片的外表更順滑,
更容易被消化道接受。再比如制成注射劑,通過血液循環(huán)達(dá)到病灶,加一些輔
料,讓藥物分子能夠被身體吸收。制作成栓劑,更容易放在黏膜里。
5.2.4依照藥品售價(jià)區(qū)間進(jìn)行統(tǒng)計(jì)
經(jīng)過前面數(shù)據(jù)清洗整合得出有效數(shù)據(jù)并且存入本地后,繪出藥品售價(jià)總覽
圖(如圖5-13所示)。從圖中可以知曉藥品的價(jià)格售價(jià)高低相差較大,而且普
遍集中在20元內(nèi),此階段售價(jià)藥品數(shù)量達(dá)到了3125種,占據(jù)總藥品數(shù)量的
3/4,而高價(jià)的藥品僅僅只有幾十種,這全得益于國家的各種政策福利,對(duì)普通
老百姓來說是福音,從側(cè)面就體現(xiàn)出老有所養(yǎng)、病有所醫(yī)的宣傳標(biāo)語。
23
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖5-13條形圖展示頁面
5.3綜述
此次項(xiàng)目從中得出結(jié)論:網(wǎng)上藥店作為在線醫(yī)療平臺(tái)全面發(fā)展的重要保障
不斷發(fā)展,為線上醫(yī)療用戶增長打下了基礎(chǔ)。網(wǎng)上藥店為患者提供了更多的選
擇,為患者帶來了切實(shí)的便利,通過線上購藥,患者可以極大地節(jié)省時(shí)間和交
通成本。然而,藥品作為一種商品具有其特殊性,藥品的質(zhì)量安全和銷售合規(guī)
性與人的生命健康息息相關(guān),而互聯(lián)網(wǎng)一方面能夠增強(qiáng)信息獲取的便利性,提
高流通效率,更好地滿足消費(fèi)者的用藥需求;另一方面也具有隱蔽性和虛擬性,
加上賣家資質(zhì)難以確定、監(jiān)管難度大、處方審核問題、跨地域帶來的配送隱患
等安全隱患。
24
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
6小結(jié)
在經(jīng)過不知多少個(gè)日日夜夜的思索琢磨之中,終于大致完成此次項(xiàng)目,雖
然此次項(xiàng)目還存在眾多問題,但是在日后會(huì)一一將其解決。這容納結(jié)合了本人
在學(xué)院這段時(shí)光中所學(xué)的知識(shí),這也是本人這些年來做的最長的項(xiàng)目,其中遇
到的最大問題就是:爬取這個(gè)網(wǎng)頁時(shí)總會(huì)出現(xiàn)特殊字符,最終查詢大量資料,
訪問眾多博客帖子才知道是該網(wǎng)頁運(yùn)用了特殊的反扒機(jī)制[15],會(huì)令其爬取的信
息產(chǎn)生特殊字符來掩蓋信息的真實(shí)性。接著請(qǐng)教專業(yè)人士才指導(dǎo)本人完成特殊
字符的搜集與替換。替換成可用數(shù)據(jù)的方法如圖6-1所示。
圖6-1替換特殊字符
其次就是在爬取網(wǎng)頁時(shí),需要注意的是:引用xpath路徑時(shí)有“復(fù)制
XPath”和“復(fù)制完整的XPath”兩個(gè)選項(xiàng)如圖6-2所示,兩個(gè)路徑是兩個(gè)不同
的路徑,是有區(qū)別的,先前第一次引用的時(shí)候是引用錯(cuò)誤的,導(dǎo)致爬取數(shù)據(jù)時(shí)
怎么也爬取不到所需數(shù)據(jù),之后翻閱教材、學(xué)習(xí)通課件之后才知道是自身選錯(cuò)
了路徑,改正之后就可用正常爬取數(shù)據(jù)了。從這個(gè)很小的問題反映出數(shù)據(jù)的嚴(yán)
謹(jǐn)性,錯(cuò)誤的選擇只會(huì)適得其反。
25
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)
圖6-2復(fù)制所需路徑
過程雖然異常艱辛,但是每一次一點(diǎn)點(diǎn)的進(jìn)步都會(huì)令人心情澎湃,當(dāng)遇到
問題時(shí)經(jīng)常會(huì)在上面思索半天,有時(shí)候是一下午,有時(shí)候甚至是一天,即使茶
飯不進(jìn)、即使一刻不停,依然不會(huì)感到疲憊,每當(dāng)碰到問題時(shí),本人第一時(shí)間
第一想法就是百度,當(dāng)然也很有效果,但是同樣以前的課件內(nèi)容也是一筆不菲
財(cái)富,里面很多的知識(shí)都可以針對(duì)不同的問題作出解決方法,另外如果方向錯(cuò)
了,做什么都是徒勞,就像引用xpath路徑時(shí),一個(gè)很小的細(xì)節(jié)都會(huì)影響最后
的導(dǎo)向,所以無論做什么事都要穩(wěn)中有進(jìn)、進(jìn)中求穩(wěn)。此次項(xiàng)目的完成使其更
加了解了Python數(shù)據(jù)分析的核心概念和方法,并通過一步一步的實(shí)操和探索,
逐漸深化對(duì)相關(guān)工具和方法的了解和掌握。同時(shí),也意識(shí)到了數(shù)據(jù)預(yù)處理的重
要性,發(fā)現(xiàn)了數(shù)據(jù)集中存在的一些數(shù)據(jù)問題并成功解決,且利用可視化工具進(jìn)
行數(shù)據(jù)可視化和生層次分析。這次項(xiàng)目所給予的經(jīng)驗(yàn)都是平時(shí)在課堂中所沒有
的,不僅僅知道了大數(shù)據(jù)的魅力,更讓自己知道了大數(shù)據(jù)的價(jià)值,每一條數(shù)據(jù)
都有這它的價(jià)值,千千萬萬的數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度餐飲廚房能源消耗分析與節(jié)能減排承包合同3篇
- 2025年度區(qū)塊鏈技術(shù)研究人員保密協(xié)議及項(xiàng)目合作條款3篇
- 2025年度時(shí)尚服飾品牌代理供貨合作協(xié)議4篇
- 2025年度二零二五年度生態(tài)旅游區(qū)場(chǎng)攤位租賃管理協(xié)議4篇
- 2025年度企業(yè)年會(huì)策劃與演出服務(wù)合同4篇
- 2025年度服裝服飾貨款抵押銷售合同范本4篇
- 2024石材石材石材運(yùn)輸保險(xiǎn)服務(wù)合作協(xié)議3篇
- 2025年度柴油發(fā)動(dòng)機(jī)技術(shù)培訓(xùn)合同4篇
- 2025年度體育賽事場(chǎng)地冠名權(quán)及推廣合作合同4篇
- 二零二五年度防盜門行業(yè)展會(huì)贊助合作合同3篇
- 2024版《53天天練單元?dú)w類復(fù)習(xí)》3年級(jí)語文下冊(cè)(統(tǒng)編RJ)附參考答案
- 2025企業(yè)年會(huì)盛典
- 215kWh工商業(yè)液冷儲(chǔ)能電池一體柜用戶手冊(cè)
- 場(chǎng)地平整施工組織設(shè)計(jì)-(3)模板
- 交通設(shè)施設(shè)備供貨及技術(shù)支持方案
- 美容美發(fā)店火災(zāi)應(yīng)急預(yù)案
- 餐車移動(dòng)食材配送方案
- 項(xiàng)目工程師年終總結(jié)課件
- 一年級(jí)口算練習(xí)題大全(可直接打印A4)
- 電動(dòng)車棚消防應(yīng)急預(yù)案
- 人力資源戰(zhàn)略規(guī)劃地圖
評(píng)論
0/150
提交評(píng)論