版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
目錄
1引言1
1.1項目背景1
1.2開發(fā)環(huán)境與工具1
1.2.1Python簡介1
1.2.2MySQL簡介2
1.2.3Jypyternotebook簡介2
1.2.4Tableau簡介3
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ù)5
2.3.3可視化技術(shù)5
3數(shù)據(jù)采集6
3.1采集頁面分析6
3.2字段分析7
3.3編程實現(xiàn)8
4數(shù)據(jù)清洗與處理12
4.1數(shù)據(jù)清洗12
4.2數(shù)據(jù)儲存13
4.3操作實現(xiàn)14
5數(shù)據(jù)統(tǒng)計與分析15
5.1數(shù)據(jù)準(zhǔn)備15
5.2數(shù)據(jù)展示17
5.2.1依據(jù)安居客深圳城市二手房地址信息進(jìn)行統(tǒng)計17
5.2.2依據(jù)安居客深圳城市二手房的標(biāo)題信息進(jìn)行統(tǒng)計18
I
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
5.2.3據(jù)進(jìn)安居客深圳城市二手房房價進(jìn)行條線圖統(tǒng)計和分析19
5.2.4依據(jù)安居客深圳城市二手房房價進(jìn)行折線圖統(tǒng)計和分析20
5.3綜述20
6小結(jié)21
參考資料21
II
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
安居客網(wǎng)站深圳城市二手房數(shù)據(jù)采集與分析
1引言
隨著城市的發(fā)展,房地產(chǎn)行業(yè)也越來越受到關(guān)注。二手房作為房地產(chǎn)行業(yè)
的重要組成部分,對于市場的發(fā)展和監(jiān)管起著至關(guān)重要的作用。因此,在如今
日益普遍的數(shù)據(jù)化時代,采集和分析二手房市場數(shù)據(jù)變得尤為重要。
本項目設(shè)計以深圳城市為研究對象,采集安居客網(wǎng)站上深圳城市二手房數(shù)
據(jù),并進(jìn)行系統(tǒng)的數(shù)據(jù)分析和挖掘。旨在通過對大量的實際數(shù)據(jù)樣本的獲取和
處理,揭示深圳二手房市場的特點和規(guī)律,對房地產(chǎn)企業(yè)、政府部門和個人投
資者提供參考意見。
1.1項目背景
近年來,隨著經(jīng)濟的快速發(fā)展和城市化進(jìn)程的加快,房地產(chǎn)業(yè)成為了我國
經(jīng)濟發(fā)展的支柱產(chǎn)業(yè)之一。而二手房市場則是房地產(chǎn)行業(yè)中不可或缺的重要部
分。深圳作為中國改革開放的前沿城市之一,其房地產(chǎn)市場發(fā)展迅速,并且隨
著近年來深港澳大灣區(qū)建設(shè)的推進(jìn),深圳城市二手房市場也面臨著新的機遇和
挑戰(zhàn)。
數(shù)據(jù)采集和分析在現(xiàn)代社會中扮演著越來越重要的角色。通過對大量的實
際數(shù)據(jù)進(jìn)行采集和處理,可以揭示市場的規(guī)模、結(jié)構(gòu)和規(guī)律,為政府部門、企
業(yè)和個人提供決策支持。針對深圳城市二手房市場的特點及其內(nèi)在規(guī)律進(jìn)行研
究,以便更好地幫助市場參與者進(jìn)行決策,提高市場運行效率已經(jīng)變得非常必
要。
本項目將利用爬蟲技術(shù)獲取安居客網(wǎng)站上深圳城市二手房數(shù)據(jù),并采用各
種數(shù)據(jù)分析和挖掘方法,在對數(shù)據(jù)進(jìn)行清洗和預(yù)處理后,對深圳二手房市場進(jìn)
行分析和研究。通過項目的實施,將為深圳房地產(chǎn)市場的進(jìn)一步發(fā)展和日益完
善提供有力支持。
1.2開發(fā)環(huán)境與工具
1.2.1Python簡介
Python是一種高級編程語言,由荷蘭人GuidovanRossum于1990年代
1
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
初期設(shè)計開發(fā)。從最初的教育和科研領(lǐng)域應(yīng)用開始,Python逐漸成為工業(yè)和
商業(yè)領(lǐng)域中廣泛使用的一種通用編程語言。
對于本項目設(shè)計而言,Python作為非常適合數(shù)據(jù)分析和挖掘的編程語
言,可以發(fā)揮其優(yōu)越性能和靈活特點,提供高效的解決方案和工具支持。通過
使用Python,我們可以快速完成數(shù)據(jù)采集、處理、可視化和機器學(xué)習(xí)的相關(guān)
任務(wù),并獲得深入洞察市場和業(yè)務(wù)規(guī)律的有價值結(jié)論和見解。
Python是一種通用語言,可以用于各種應(yīng)用程序開發(fā),包括Web開發(fā)、
數(shù)據(jù)分析、人工智能、游戲開發(fā)、網(wǎng)絡(luò)編程等。它被廣泛地應(yīng)用于科學(xué)計算、
金融分析、機器學(xué)習(xí)、自然語言處理等領(lǐng)域。
Python擁有豐富的第三方庫和模塊,這些模塊可以輕松地實現(xiàn)各種功
能。另外,Python還有一個龐大而活躍的社區(qū),提供了豐富的資源和支持。
總之,Python是一種靈活、易于學(xué)習(xí)和使用的編程語言,是現(xiàn)代計算機
編程中不可缺少的一個工具。
最后,在編程語言排行榜中。Python的排名已經(jīng)與老牌的C語言和JAVA
語言不相上下,它也逐漸走進(jìn)非IT行業(yè)工作者的視野內(nèi)?,F(xiàn)如今,人們用它開
發(fā)簡單的小腳本用來做文件的自動化處理或者開發(fā)一些小網(wǎng)站打發(fā)無聊時光。
這也突出Python的特點就是易學(xué)、第三方庫足夠豐富、并且免費開源、支持
跨多平臺且可移植性比較強。
1.2.2MySQL簡介
MySQL是由瑞典MySQLAB公司開發(fā)的一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。它是
一款開源軟件,現(xiàn)在歸屬于Oracle公司。MySQL被廣泛應(yīng)用于WEB應(yīng)用程序
開發(fā)中,支持Windows、Linux、Unix等多種操作系統(tǒng),并且提供了多種語言
的API。
MySQL的優(yōu)勢在于它占用資源少、速度快、穩(wěn)定性高、易使用等特點。并
且,MySQL支持多用戶并發(fā)訪問,可以通過傳輸加密的方式保證數(shù)據(jù)的安全
性。此外,MySQL還有很多功能強大的擴展庫,例如MyISAM、InnoDB等。
總之,MySQL是一款功能強大、易于學(xué)習(xí)和使用的關(guān)系型數(shù)據(jù)庫管理系
統(tǒng),被廣泛應(yīng)用于Web應(yīng)用程序的開發(fā)
1.2.3Jypyternotebook簡介
JupyterNotebook是一種基于Web的交互式計算環(huán)境,支持各種編程語
言的交互式運行。它的名字取自三種編程語言的縮寫:Julia、Python和R。
2
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
JupyterNotebook提供了一個可編寫代碼、文檔和數(shù)據(jù)可視化的環(huán)境,
用戶可以將代碼、圖表和說明文字整合在一起,形成一個文檔。這個文檔還可
以被其他人訪問和編輯,方便協(xié)作。
JupyterNotebook支持超過40種編程語言,包括Python、R、Julia、
Scala等。它基于開放標(biāo)準(zhǔn)并且開源,非常適合數(shù)據(jù)分析、機器學(xué)習(xí)、科學(xué)計
算、可視化等領(lǐng)域的開發(fā)和應(yīng)用。
總之,JupyterNotebook是一種強大而靈活的交互式計算環(huán)境,具有廣
泛的應(yīng)用和豐富的擴展功能。
1.2.4Tableau簡介
Tableau是一款數(shù)據(jù)可視化和商業(yè)智能工具,由TableauSoftware開
發(fā)。它提供了一系列易于使用的功能,幫助用戶從各種數(shù)據(jù)源中獲取數(shù)據(jù)并創(chuàng)
建豐富、交互式的可視化報表、儀表盤、交互式地圖等,幫助用戶更好地理解
數(shù)據(jù)。
Tableau可以連接各種數(shù)據(jù)源,包括關(guān)系型數(shù)據(jù)庫、云數(shù)據(jù)存儲、NoSQL
數(shù)據(jù)庫等,并支持多個文件格式導(dǎo)入,例如.csv、.xls、.json等。在數(shù)據(jù)可
視化方面,Tableau提供了許多可視化工具,例如折線圖、柱狀圖、散點圖、
地圖、條形圖等,用戶可以根據(jù)自己的需求選擇最適合自己的可視化方式。
除了數(shù)據(jù)可視化之外,Tableau還提供了強大的數(shù)據(jù)分析功能,包括數(shù)據(jù)
清洗、數(shù)據(jù)處理、計算字段、公式等,使用戶可以輕松地對數(shù)據(jù)進(jìn)行探索和分
析。
總的來說,Tableau是一款非常流行和實用的商業(yè)智能軟件,廣泛應(yīng)用于
企業(yè)、政府、學(xué)術(shù)界等領(lǐng)域。
2需求分析
2.1可行性需求分析
安居客深圳城市二手房數(shù)據(jù)采集與分析項目設(shè)計是可行的,原因如下:
數(shù)據(jù)來源可靠:我們選擇在安居客官網(wǎng)上獲取數(shù)據(jù),該網(wǎng)站是一個專注于
房地產(chǎn)信息的平臺,其提供的信息具有較高的可靠性和權(quán)威性。
技術(shù)可實現(xiàn):Python編程語言擁有較為成熟的網(wǎng)絡(luò)爬蟲、數(shù)據(jù)處理、數(shù)
據(jù)可視化及機器學(xué)習(xí)領(lǐng)域的相關(guān)庫。同時,Python語言易于學(xué)習(xí)和操作,并
且具有廣泛應(yīng)用的優(yōu)勢。
3
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
市場需求存在:隨著經(jīng)濟的發(fā)展,房地產(chǎn)行業(yè)重要性不斷提高,市場規(guī)模
逐年擴大,快速掌握住深圳市場情報變化趨勢,對投資者或業(yè)內(nèi)人士具有很大
的參考價值。
可行性方案切換:在極特殊情況下,無法完成爬蟲和數(shù)據(jù)處理時,由于深
圳市區(qū)二手房租售信息相對齊全,我們還可以通過購買第三方數(shù)據(jù)源進(jìn)行分析
和挖掘。
總之,從數(shù)據(jù)來源可靠、技術(shù)可實現(xiàn)、市場需求存在以及可行性方案切換
等多個角度考慮,安居客深圳城市二手房數(shù)據(jù)采集與分析項目設(shè)計是具有可行
性的。
2.2采集目標(biāo)功能分析
安居客深圳城市二手房數(shù)據(jù)采集與分析項目設(shè)計的采集目標(biāo)功能分析可能
涉及以下方面:
1、數(shù)據(jù)采集:通過安居客網(wǎng)站爬取深圳城市二手房房源信息,包括房源
名稱、地址、總價、單價、戶型、面積、朝向、樓層等多個維度的信息。
2、數(shù)據(jù)清洗:對采集到的數(shù)據(jù)進(jìn)行清洗,去除重復(fù)數(shù)據(jù)、缺失數(shù)據(jù)等,
保證數(shù)據(jù)的準(zhǔn)確性和完整性。
3、數(shù)據(jù)分析:對清洗后的數(shù)據(jù)進(jìn)行統(tǒng)計和分析,計算二手房的平均總
價、單價、面積等指標(biāo),繪制二手房價格分布圖、戶型分布圖等可視化圖表,
幫助用戶更好地了解深圳城市二手房市場。
4、數(shù)據(jù)展示:將分析結(jié)果以報表、圖表、表格等形式直觀地展示出來,
方便用戶快速地獲取和查看深圳城市二手房市場的相關(guān)信息。
2.3關(guān)鍵技術(shù)分析
2.3.1網(wǎng)絡(luò)爬蟲技術(shù)
網(wǎng)絡(luò)爬蟲也被人們叫做網(wǎng)絡(luò)機器人,顧名思義就是讓人們不用自己動手操
作,只需要編寫程序或者一些小腳本用來自動的瀏覽龐大的互聯(lián)網(wǎng),并且對想要
的目標(biāo)網(wǎng)頁去進(jìn)行精準(zhǔn)的數(shù)據(jù)的采集。當(dāng)下常見的一些網(wǎng)絡(luò)爬蟲按照實現(xiàn)的原
理和技術(shù)結(jié)構(gòu)一般可以分為:通用網(wǎng)絡(luò)爬蟲、聚焦網(wǎng)絡(luò)爬蟲、增量式網(wǎng)絡(luò)爬
蟲、深層網(wǎng)絡(luò)爬蟲等一些類型。
網(wǎng)絡(luò)爬蟲(WebCrawler),也叫網(wǎng)絡(luò)蜘蛛或網(wǎng)絡(luò)機器人,是一種自動化程
序,可以按照一定規(guī)則在互聯(lián)網(wǎng)上自動抓取信息并進(jìn)行處理分析。簡單來說,
4
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
就是通過編寫程序模擬人的行為,在指定的網(wǎng)站或者整個互聯(lián)網(wǎng)上收集數(shù)據(jù)和
信息。
通常情況下,網(wǎng)絡(luò)爬蟲是通過HTTP協(xié)議訪問互聯(lián)網(wǎng)上的網(wǎng)頁,并抓取相
應(yīng)的信息。爬蟲可以自動遍歷多個頁面,獲取所需數(shù)據(jù),并將其存儲在數(shù)據(jù)庫
中,方便后續(xù)的處理和分析。
網(wǎng)絡(luò)爬蟲技術(shù)主要包括如下步驟:
抓取指定網(wǎng)頁:通過HTTP協(xié)議請求網(wǎng)頁,獲取網(wǎng)頁內(nèi)容,并解析HTML
代碼。
提取有用信息:從網(wǎng)頁中提取所需的信息,例如文本、圖片等。
存儲數(shù)據(jù):將提取到的信息存儲在本地或者遠(yuǎn)程數(shù)據(jù)庫中。
處理異常情況:網(wǎng)絡(luò)爬蟲需要考慮到可能出現(xiàn)的各種異常情況,例如網(wǎng)頁
不存在、請求超時等,需要進(jìn)行相應(yīng)的異常處理。
網(wǎng)絡(luò)爬蟲技術(shù)在各個領(lǐng)域都有廣泛的應(yīng)用,例如搜索引擎、數(shù)據(jù)挖掘、輿
情監(jiān)測等。但同時也需要注意合法性和道德性,不違反相關(guān)法律法規(guī)以及網(wǎng)站
的用戶協(xié)議。
2.3.2文件存取技術(shù)
Python中文件存取技術(shù)十分豐富,常見的幾種方式包括:
1、文本文件讀寫:使用Python內(nèi)置函數(shù)open()打開文件,通過
read()、write()等方法來讀寫文件。在讀取文本文件時,可以使用with語句
保證文件會被正確讀寫。
2、二進(jìn)制文件讀寫:與文本文件類似,但需要指定'b'模式(binary)來
打開文件,同時使用read()、write()等方法讀寫字節(jié)流。
3、CSV文件讀寫:使用Python標(biāo)準(zhǔn)庫中的csv模塊,可以方便地讀寫
CSV格式的文件。
4、JSON文件讀寫:使用Python標(biāo)準(zhǔn)庫中的json模塊,可以方便地讀寫
JSON格式的文件
2.3.3可視化技術(shù)
數(shù)據(jù)可視化是將數(shù)據(jù)通過圖表、圖形等可視化方式呈現(xiàn)出來,可以使數(shù)據(jù)
更加直觀、易于理解和分析。在數(shù)據(jù)可視化的流程中,一般包括以下幾個步
驟:數(shù)據(jù)收集、數(shù)據(jù)清洗、數(shù)據(jù)處理、數(shù)據(jù)可視化、數(shù)據(jù)交互等步驟。其中,
數(shù)據(jù)可視化是整個流程的核心,它可以幫助人們更好地發(fā)現(xiàn)數(shù)據(jù)之間的關(guān)系,
5
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
從而做出更加科學(xué)的決策。
常見的數(shù)據(jù)可視化方式有折線圖、柱狀圖、餅圖、散點圖、雷達(dá)圖等。此
外,隨著技術(shù)的發(fā)展,越來越多的新型可視化形式也被開發(fā)出來,例如熱力
圖、樹狀圖、力導(dǎo)向圖等。這些新型可視化形式可以更好地呈現(xiàn)數(shù)據(jù)之間的復(fù)
雜關(guān)系,豐富了數(shù)據(jù)可視化的應(yīng)用場景。
數(shù)據(jù)可視化工具可以幫助人們快速地進(jìn)行數(shù)據(jù)可視化,常見的工具包括
Excel、Tableau、ChartBlocks等[1]。在進(jìn)行數(shù)據(jù)可視化時,設(shè)計師需要遵
循一定的設(shè)計原則,例如選擇合適的顏色、字體、比例等,以達(dá)到更好的視覺
效果和用戶體驗。
數(shù)據(jù)可視化在實際應(yīng)用中有著廣泛的應(yīng)用場景,例如商業(yè)分析、科學(xué)研
究、金融風(fēng)險管理等。同時,隨著大數(shù)據(jù)時代的到來,數(shù)據(jù)可視化也日益重要
起來,可以幫助企業(yè)更好地理解和應(yīng)用大數(shù)據(jù)
3數(shù)據(jù)采集
3.1采集頁面分析
我們先通過MicrosoftEdge瀏覽器對安居客的官網(wǎng)進(jìn)行搜索,去把其相
關(guān)的頁面信息進(jìn)行熟悉,并點擊了二手房深圳的頁面進(jìn)行了查看,相關(guān)頁面信
息如圖3-1所示。
圖3-1數(shù)據(jù)網(wǎng)址頁面
按F12調(diào)出開發(fā)者工具,查看所在頁面的相關(guān)信息,尤其注意靜態(tài)的相關(guān)
代碼。
6
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
圖3-2開發(fā)者工具
在把需要爬取的頁面進(jìn)行了確定之后,我們便開始了對其頁面的字段分
析。
3.2字段分析
根據(jù)具體需求進(jìn)行篩選和整理。例如,如果需要研究不同區(qū)域的房價水
平,可以選擇所在區(qū)域、建筑面積、總價等字段進(jìn)行分析;如果需要研究裝修
情況對房價的影響,可以選擇裝修情況、建筑面積、總價等字段進(jìn)行分析。同
時,可以通過數(shù)據(jù)可視化技術(shù)將分析結(jié)果呈現(xiàn)出來,以便更好地理解和應(yīng)用數(shù)
據(jù)。相關(guān)的分析數(shù)據(jù)類型如圖3-3所示。
圖3-3分析數(shù)據(jù)類型頁面
7
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
3.3編程實現(xiàn)
導(dǎo)入所需庫,使用其相應(yīng)的功能,如圖3-4所示。
圖3-4導(dǎo)入所需庫頁面
設(shè)置請求頭,偽裝成瀏覽器訪問服務(wù)器,使其可以對相關(guān)的數(shù)據(jù)進(jìn)行爬
取。相關(guān)的請求頭部分如圖3-5所示。
圖3-5請求頭內(nèi)容頁面
代碼實現(xiàn)如下:
importrequests
importtime
fromlxmlimportetree
importre
importcsv
##url是第一頁地址,url-model是最后一頁地址...
url='/sale/p46/?from=HomePage_TopBar'
url_model=
'/sale/p46/?from=HomePage_TopBar'#
第一頁,只有46頁的數(shù)據(jù)、46以后是空的...
urls='/sale/p1/'
##可能升級了,會檢查cookies了...
8
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
headers={
'User-Agent':'Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/'
'537.36(KHTML,likeGecko)Chrome/94.0.4606.71
Safari/537.36Core/'
'00QQBrowser/11.6.5265.400',
#'referer':'/',
}
#res=requests.get(url_model,headers=headers)
#print(res)
#print(res.text)
filename='深圳市二手房.csv'
#自定義,建立表格的函數(shù),傳入文件名
defcreate_table(filename):
f=open(filename,'w',encoding='utf-8-sig',newline='')#w覆蓋
寫入,表頭
ww=csv.writer(f)
head=['標(biāo)題','地址','區(qū)','總價多少','平方價格','房屋基本信
息','總價數(shù)值']#表頭
ww.writerow(head)
f.close()
#自定義,儲存信息的函數(shù),傳入文件名,和傳入數(shù)據(jù)..
defsave_data(filename,data):
f=open(filename,'a',encoding='utf-8-sig',newline='')#追加a
寫入數(shù)據(jù),不斷地追加寫入..
ww=csv.writer(f)
ww.writerow(data)
f.close()
#自定義的解析函數(shù)...
defparse_data(page_text):
tree=etree.HTML(page_text)#etree解析網(wǎng)頁源代碼
#提取一個頁面中所有信息的div列表
div_list=
tree.xpath('//*[@id="esfMain"]/section/section[3]/section[1]/section
[2]/div')
##所有房屋所在div大列表
forliindiv_list:#遍歷div列表中的每一個小div標(biāo)
簽...
9
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
####標(biāo)題,地址,哪個區(qū),總價,平方價格,房屋基本
情況,總價的數(shù)值####
title=li.xpath('./a/div[2]/div[1]/div[1]/h3/text()')[0]
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[1]/a
/div[2]/div[1]/div[1]/h3
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[2]/a
/div[2]/div[1]/div[1]/h3
address=
li.xpath('./a/div[2]/div[1]/section/div[2]/p[1]/text()')[0]#
地點
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[1]/a
/div[2]/div[1]/section/div[2]/p[1]/text()
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[2]/a
/div[2]/div[1]/section/div[2]/p[1]/text()
address1=
li.xpath('./a/div[2]/div[1]/section/div[2]/p[2]//text()')[0]
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[1]/a
/div[2]/div[1]/section/div[2]/p[2]
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[2]/a
/div[2]/div[1]/section/div[2]/p[2]
address1=''.join(address1)#深圳的哪個區(qū),使之列表
轉(zhuǎn)化成字符串...
total_price=
li.xpath('./a/div[2]/div[2]/p[1]/span[1]/text()')[0]#總價的數(shù)值
形式
total_price1=total_price+'萬'#總價多少,加上一
個萬...#總價的字符串表示..+‘萬’
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[1]/a
/div[2]/div[2]/p[1]/span[1]
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[2]/a
/div[2]/div[2]/p[1]/span[1]
adv_price=li.xpath('./a/div[2]/div[2]/p[2]/text()')[0]
#均價多少..
10
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[1]/a
/div[2]/div[2]/p[2]
infos=li.xpath('./a/div[2]/div[1]/section/div[1]//text()')
#基本情況
#
//*[@id="esfMain"]/section/section[3]/section[1]/section[2]/div[1]/a
/div[2]/div[1]/section/div[1]
infos=''.join(infos)#基本情況,列表轉(zhuǎn)為字符串...
infos=re.sub('\n','',infos)#去掉換行符
infos=re.sub('','',infos)#去掉無用空格
#總價的數(shù)值形式處理,清洗為數(shù)值...
total_price=float(total_price)*10000#轉(zhuǎn)為浮點型小
數(shù),乘上1000(1萬)的數(shù)值
total_price=int(total_price)#再取整
total_price=str(total_price)#轉(zhuǎn)為字符串存儲
#data=[title,address,infos]
data=[title,address,address1,
total_price1,adv_price,infos,total_price]#所有數(shù)據(jù)放入列表
save_data(filename,data)#存儲數(shù)據(jù)的函數(shù)...
print(data)
#自此調(diào)用,創(chuàng)建表格的函數(shù)
create_table(filename)
foriinrange(1,10):#從1-10,逐漸翻頁
#url_models=
f'/sale/p{i}/?from=HomePage_TopBar'#從
第一頁開始,更改參數(shù)、實現(xiàn)翻頁效果..
url_models=f'/sale/p{i}/'
headers['referer']=f'/sale/p{i}/'
##更改refrer...鍵值對...
res=requests.get(url_models,headers=headers)
print(res)
#print(res.text)
parse_data(res.text)#貌似每每超過10頁就會報錯,安居客
的反扒措施...
time.sleep(2)
print(i,888888)
ifi==11:#超過10了,選擇終止迭代
11
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
break
#完成的提示...
print('(安居客),深圳市二手房采集已經(jīng)完成?。。?/p>
')
4數(shù)據(jù)清洗與處理
獲得龐大的數(shù)據(jù)集之后我們需要對數(shù)據(jù)進(jìn)行預(yù)處理,也就是所謂的清洗和
檢查,確定爬取過來的數(shù)據(jù)是否存在無效值和確實值,要保證數(shù)據(jù)的一致性,這
個對于信息質(zhì)量的評估是一項很重要的任務(wù)。不僅如此,我們需要將數(shù)據(jù)進(jìn)行
有理化和有序化,這樣子能夠在數(shù)據(jù)調(diào)用共享過程中方便很多開發(fā)人員對數(shù)據(jù)
信息的使用。
4.1數(shù)據(jù)清洗
本次項目中我們需要將爬下來的數(shù)據(jù)和網(wǎng)頁原數(shù)據(jù)進(jìn)行比對,并且檢查是
否出現(xiàn)空值、錯值,還有數(shù)據(jù)的位置是否正確。根據(jù)不同的需求我們要對數(shù)據(jù)
進(jìn)行不同的處理,相關(guān)的數(shù)據(jù)清洗代碼如圖4-1所示。
圖4-1數(shù)據(jù)清洗準(zhǔn)備頁面
12
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
如圖4-2所示,經(jīng)過比對和檢查,發(fā)現(xiàn)數(shù)據(jù)不存在缺失,錯位還有空值,那
么我們根據(jù)需求將有效數(shù)據(jù)統(tǒng)一規(guī)劃去掉不要的行列數(shù)據(jù),防止數(shù)據(jù)冗余。因
此我們只需保留需要的數(shù)據(jù),然后整理為原網(wǎng)頁格式存入csv文件中,留存后續(xù)
作為統(tǒng)計分析、可視化使用。
圖4-2數(shù)據(jù)清洗完成界面
4.2數(shù)據(jù)儲存
數(shù)據(jù)儲存得方法有很多種,常見得可以直接用記事本格式儲存(txt),或
者直接用其他文件的形式儲存csv、excel、json等,但是以上方法保存的數(shù)據(jù)
體量普遍都比較小。如果需要儲存較大的數(shù)據(jù)信息就需要用到我們的數(shù)據(jù)庫,
數(shù)據(jù)庫也分為關(guān)系型和非關(guān)系型數(shù)據(jù)庫。關(guān)系型數(shù)據(jù)庫比較典型的有MySQL和
Oracle等,非關(guān)系型數(shù)據(jù)庫等以鍵值對形式儲存數(shù)據(jù)的代表有Mongodb、Redis
等。本次項目我們用到的是csv、MySQL。
如圖4-3所示:
13
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
圖4-3數(shù)據(jù)存儲為csv文件的頁面
圖4-4數(shù)據(jù)存儲MySQL頁面
如圖4-4中,我們在利用了NavicatPremium12中的csv表導(dǎo)入之后,
在點擊查看表的相關(guān)信息時,發(fā)現(xiàn)表的信息成功導(dǎo)入。
4.3操作實現(xiàn)
本次我們使用的是NavicatPremium12的csv文件直接導(dǎo)入到數(shù)據(jù)庫之
中,在localhost_3306的連接之下新建了二手房信息的數(shù)據(jù)庫,結(jié)果如圖4-
5所示。
圖4-5數(shù)據(jù)存儲MySQL頁面
在二手房信息的數(shù)據(jù)庫中,我們點擊導(dǎo)入向?qū)нM(jìn)入導(dǎo)入的操作界面,如圖
4-6所示。
14
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
圖4-6數(shù)據(jù)存儲MySQL頁面
在導(dǎo)入的界面之中,我們選擇CSV文件的導(dǎo)入方式,便可把數(shù)據(jù)導(dǎo)入到
數(shù)據(jù)庫中,并在其之下建立了一個新表,結(jié)果如圖4-7所示。
圖4-7數(shù)據(jù)存儲MySQL頁面
5數(shù)據(jù)統(tǒng)計與分析
5.1數(shù)據(jù)準(zhǔn)備
我們利用了pandas的read_csv的相關(guān)功能,先對在本地的csv文件進(jìn)行
查看,如圖5-1所示,成功的把數(shù)據(jù)進(jìn)行了展示,沒有發(fā)生報錯的現(xiàn)象,
15
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
圖5-1數(shù)據(jù)準(zhǔn)備頁面
我們對加載出來的數(shù)據(jù)進(jìn)行查看,如圖5-2所示。
圖5-2數(shù)據(jù)加載頁面
打開Tableau軟件,選擇本地文件,加載源文件data。csvs,如圖5-3所
表。
16
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
圖5-3Tableau頁面
5.2數(shù)據(jù)展示
5.2.1依據(jù)二手房地址信息進(jìn)行統(tǒng)計
圖5-4數(shù)據(jù)展示頁面
如圖5-4所示我們示將在表格中地址的字段數(shù)據(jù)進(jìn)行匯總和處理然后將其
統(tǒng)計出現(xiàn)的頻率,我們可以發(fā)現(xiàn)在眾多的地址中,?;▓@、一期、二期、三期等
17
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
字樣較為突出,從中我們可以看出在環(huán)境方面人們比較在意是否有花園的存
在,由此我們可以看出生態(tài)的建設(shè)尤為重要。
而一期、二期、三期的之中,我們可以看出二期的字樣尤為碩大,因為再
房產(chǎn)界中,二期相較于一期和三期,自然入戶體驗也會更加舒服。二期房子在
建設(shè)的時候,可能會避免一期房子出現(xiàn)的問題,比較注重入住后的實際效果,
所以很多人比較愿意選擇二期的房子,二期房在整個的房屋建造和室內(nèi)細(xì)節(jié)設(shè)
計上,都會比一期房更加的精致,細(xì)節(jié)處理的也更加到位。二期的房子價格比
一期要高很多,但在整體質(zhì)量更好的優(yōu)勢下,還是讓人們更加對這樣的房屋更
有購買的吸引力,所以在二手房的標(biāo)題信息中,更加的突出。
總的來說,環(huán)境、房屋的質(zhì)量對二手房的購買者有一定的吸引力。
5.2.2依據(jù)二手房的標(biāo)題信息進(jìn)行統(tǒng)計
圖5-5數(shù)據(jù)展示頁面
從圖5-5中我們可以看出精裝修、花園、南北通透、滿五等字樣較為突
出,其中精裝修我們可以理解為精裝房,具體來說,精裝修相對于毛坯房,具
有以下優(yōu)點:首先,精裝修房子的裝修質(zhì)量相對較高,可以避免業(yè)主后期再做
裝修所遇到的問題;其次,精裝修房子的裝修風(fēng)格多樣,可以更好地滿足不同
業(yè)主的需求及裝修口味;最后,購買精裝修房子會使業(yè)主更加省心,無需在房
屋交付后再花費時間和精力進(jìn)行裝修,在深圳這個快速而又忙碌的城市中,人
18
湖南商務(wù)職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計
們的精力有限,所以人們更加傾向于直接選擇可以直接入住的房子,所以在標(biāo)
題方面,而滿五則是如果一套二手房已經(jīng)滿五年,賣方也能夠免征20%的個人
所得稅,這會讓購房者更加會去選擇這類房。
而在花園、南北通透方面則是房子本身的一些特性,同時也是購房者需要
去考慮的地方,總之在二手房標(biāo)題這一方向上,可以看出方便、便宜、環(huán)境好
等特征吸引著購房者。
5.2.3依據(jù)二手房房價進(jìn)行條線圖統(tǒng)計和分析
圖5-6數(shù)據(jù)展示頁面
從圖5-6中可以得知安居客深圳城市二手房房價的房價的基本的集中區(qū)
域,最高的達(dá)到了8萬之上,其余都集中在6萬之下,而絕大多數(shù)在2萬之
下,從中我們可以發(fā)現(xiàn)相較于深圳一手房的房價,二手房還是給了人們更多的
選擇空間,讓更多的深圳當(dāng)?shù)剡M(jìn)行工作的人們可以買得起房子,但相較于其他
的二三線城市,其房價仍然頗高,讓許多人望而卻步,無法進(jìn)行房屋的購買。
在如今這個快速發(fā)展的時代,人們的生活質(zhì)量、工作工資在提升的同時,
其它房價、生活必需品等也在水漲船高,房貸車貸等各種貸款也逐漸成為越來
越多人身上的標(biāo)簽。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 泰勒原理課程設(shè)計理念
- 暫態(tài)穩(wěn)態(tài)課程設(shè)計
- 電子綜合課程設(shè)計題目
- 洗澡兒歌整合課程設(shè)計
- 2024展覽活動場地租賃合同模板示范3篇
- 2022-2023學(xué)年廣東省廣州市海珠區(qū)小學(xué)三年級上學(xué)期語文期末試題及答案
- 2020-2021學(xué)年浙江省杭州市下城區(qū)小學(xué)二年級下冊數(shù)學(xué)期末試題及答案
- 物聯(lián)網(wǎng)傳輸層課程設(shè)計
- 2024年岳麓版高二化學(xué)下冊階段測試試卷含答案522
- 2024年度金融機構(gòu)信貸擔(dān)保期限及擔(dān)保合同變更合同3篇
- 1.3 中華文明的起源 課件 2024-2025學(xué)年部編版七年級歷史上學(xué)期
- DB15-T 3600-2024 黑土地質(zhì)量等級劃分技術(shù)規(guī)范
- 《民用爆炸物品企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化實施細(xì)則》解讀
- MIL-STD-1916抽樣計劃表(抽樣數(shù))大
- 當(dāng)代民航精神與文化智慧樹知到期末考試答案章節(jié)答案2024年中國民用航空飛行學(xué)院
- 第一單元 春之聲-《渴望春天》教學(xué)設(shè)計 2023-2024學(xué)年人教版初中音樂七年級下冊
- 養(yǎng)老護(hù)理員培訓(xùn)課件
- 裝修增項補充合同協(xié)議書
- 模擬電路設(shè)計智慧樹知到期末考試答案章節(jié)答案2024年廣東工業(yè)大學(xué)
- 行政復(fù)議法-形考作業(yè)2-國開(ZJ)-參考資料
- 2022-2023學(xué)年廣東省廣州市番禺區(qū)教科版(廣州)六年級上冊期末測試英語試卷【含答案】
評論
0/150
提交評論