全國(guó)各地區(qū)房屋裝修情況_第1頁(yè)
全國(guó)各地區(qū)房屋裝修情況_第2頁(yè)
全國(guó)各地區(qū)房屋裝修情況_第3頁(yè)
全國(guó)各地區(qū)房屋裝修情況_第4頁(yè)
全國(guó)各地區(qū)房屋裝修情況_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

全國(guó)各地區(qū)房屋裝修情況一、實(shí)踐目的本次分析的目的是了解房屋裝修情況存在的問(wèn)題以及優(yōu)勢(shì),為裝修行業(yè)更好地發(fā)展提供見(jiàn)解。調(diào)查的內(nèi)容主要是全國(guó)各地區(qū)房屋裝修情況。調(diào)查方法是網(wǎng)上爬取數(shù)據(jù)。調(diào)查結(jié)論是通過(guò)軟件分析了解到房屋裝修情況。我們之所以研究這個(gè)問(wèn)題是因?yàn)殡S著裝修行業(yè)的普及,同時(shí)也存在著許多不足之處。通過(guò)此次對(duì)房屋裝修數(shù)據(jù)的分析,讓住戶(hù)和裝修業(yè)對(duì)房屋裝修有更深入的了解,以滿(mǎn)足廣大住戶(hù)需求。二、實(shí)踐過(guò)程1、用八爪魚(yú)爬取數(shù)據(jù)2、采集信息3、用軟件對(duì)數(shù)據(jù)分析4、制作大屏三、實(shí)踐內(nèi)容(一)Python爬取網(wǎng)上數(shù)據(jù)1.初步認(rèn)識(shí)Python簡(jiǎn)單語(yǔ)句Urllib:導(dǎo)入叫urllib的包,意思為文件包Request:模塊(文件)request可以表示發(fā)送一個(gè)請(qǐng)求fromurllibimportrequest:通過(guò)urlipen()方法就可以發(fā)送請(qǐng)求了,在發(fā)送請(qǐng)求后會(huì)得到一個(gè)響應(yīng)對(duì)象=:通過(guò)“=”把右邊的值賦值給左邊的變量,如:response=request.urlopen("")(為一個(gè)網(wǎng)址連接)read:通過(guò)read()方法可以讀取查看返回對(duì)象utf-8:這是編碼,百度的專(zhuān)屬代碼a=response.read().decode("utf-8"):查看中得知編碼是utf-8decode()可以改變編碼print(a):打印查看具體的返回?cái)?shù)據(jù)request這個(gè)文件中還有個(gè)叫做urlretrieve的方法可以表示接受的請(qǐng)求#兩個(gè)參數(shù):第一個(gè)參數(shù):網(wǎng)址url;第二個(gè)參數(shù):下載到本地的文件路徑和文件名,如:request.urlretrieve("","c:/baidu.html")2.錄入語(yǔ)句對(duì)世界電影排名前100進(jìn)行爬蟲(chóng)(1)簡(jiǎn)單介紹爬蟲(chóng)的字典和列表圖3.1此程序表示,bs4是PYCHARM中一開(kāi)始存在的,插入BeatifulSoup這個(gè)包進(jìn)行代替轉(zhuǎn)換。{##}表示字典形式,給字典用等號(hào)連接起來(lái),為后來(lái)的程序建立一個(gè)字典庫(kù),以備后面使用。[###]為列表形式,列表之間用英文狀態(tài)下的逗號(hào)隔開(kāi),這時(shí)可以得到一個(gè)列表的數(shù)據(jù)錄入;使用FOR語(yǔ)句得到b,b在a中呈現(xiàn);最后用print打印,運(yùn)行代碼,看結(jié)果,如若要打印數(shù)據(jù),直接打印即可。print(a[0]);print(a[1]);print(a[2]);print(a[3])print(a[4])這表示打印a中的第一個(gè)元素,第二個(gè)元素,一直到第四個(gè)元素(2)使用urllib建立request這里的request和前面的request不是一種,這是文件名,前面是發(fā)送請(qǐng)求這里的request和前面的request不是一種,這是文件名,前面是發(fā)送請(qǐng)求圖3.2圖3.3此程序建立一個(gè)request程序,url為一個(gè)網(wǎng)址/的名稱(chēng),用url代替網(wǎng)址,減少網(wǎng)址的輸入次數(shù)。Header為源代碼的信息,User-Agent為百度王的代碼。打開(kāi)谷歌,輸入,進(jìn)入百度界面,右擊點(diǎn)擊check,看到圖3.4的界面。再看到圖3.5,我們點(diǎn)到network,再點(diǎn)擊下面出來(lái)的數(shù)據(jù),進(jìn)入到Headers中的response中,復(fù)制User-Agent,圖3.4再看到圖3.5,我們點(diǎn)到network,再點(diǎn)擊下面出來(lái)的數(shù)據(jù),進(jìn)入到Headers中的response中,復(fù)制User-Agent,再把后面的代碼復(fù)制到后面的代碼中,見(jiàn)圖3.3;req=利用“request.Request(url,headers=header)”把它讀取成一個(gè)類(lèi)。圖3.5(3)讀取爬取數(shù)據(jù)圖3.6從3.6可以看到,我們讀取了以上的數(shù)據(jù)。(4)檢驗(yàn)代碼是否成功

print(req.header_items())#查看系統(tǒng)信息

print(())#查看返回值信息

print("")html=response.read().decode("utf-8")

print(html)#檢查是否抓取成功

html2=BeautifulSoup(html,"html.parser")#1接受等待被解析的數(shù)據(jù),2接受一個(gè)內(nèi)解析器

print(html2)

bt=html2.select("h2")#查取某個(gè)string內(nèi)容(title為例),print(title)查看內(nèi)容

print(title[0].text)#取list中值只取到內(nèi)容,省略【】,設(shè)置參數(shù)text可只取文本(5)把英文代碼轉(zhuǎn)換成文本形式圖3.7圖3.7為把代碼變成文本形式的代碼,舍棄掉字母,保留下文本,對(duì)多條數(shù)據(jù),圖中采用了RANGE這個(gè)參數(shù)進(jìn)行最后的一個(gè)范圍;RANGE不僅可以進(jìn)行元素的篩選,而且也可以對(duì)數(shù)據(jù)的多重頁(yè)數(shù)進(jìn)行提??;我們可以看到STR即表示每頁(yè)10個(gè)記錄,爬取的市100條記錄。圖3.8(6)爬取全世界排名前100的影評(píng)圖3.9</script><scriptsrc="/c.php?id=30019853"language="JavaScript"></script><scriptsrc="/c.php?id=30019853"language="JavaScript"></script><scriptsrc="/c.php?id=30019853"language="JavaScript"></script></body></html>/board/4?offset=0/board/4?offset=10/board/4?offset=20/board/4?offset=30/board/4?offset=40/board/4?offset=50/board/4?offset=60/board/4?offset=70/board/4?offset=80/board/4?offset=90此為爬取的為好萊塢排名前100的數(shù)據(jù)。Processfinishedwithexitcode0上面為程序爬取出來(lái)的數(shù)據(jù),直接點(diǎn)擊爬出來(lái)的鏈接,可以看到以下的界面;上面3.8、3.9顯示出舍掉字母形式,余下文本形式,加在文本框中的數(shù)據(jù)。點(diǎn)擊紅色字體的第一條鏈接,出來(lái)霸王別姬和肖申克救贖電影,這兩部電影排名靠前。圖3.103.對(duì)“淘寶網(wǎng)”的短袖進(jìn)行爬蟲(chóng)fromurllibimportrequest

frombs4importBeautifulSoup

url="/subject/25890017/comments?status=P"

header={"User-Agent":"Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/74.0.3729.169Safari/537.36"}

req=request.Request(url,headers=header)

response=request.urlopen(req)

html=response.read().decode("utf-8")

#print(html)

soup=BeautifulSoup(html,"html.parser")#lxml

date=soup.select("span.short")

fordindate:

print(d.text)這里對(duì)淘寶網(wǎng)上的時(shí)間進(jìn)行一個(gè)最后的界定,最后得到短袖的銷(xiāo)售價(jià)格和銷(xiāo)售日期等價(jià)值。4.對(duì)好萊塢排名前100的影片進(jìn)行搜索評(píng)價(jià)fromurllibimportrequest

frombs4importBeautifulSoup

url1="/board/4?offset="

header={"User-Agent":"Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/74.0.3729.169Safari/537.36"}

forpageinrange(10):

url=url1+str(page*10)

req=request.Request(url,headers=header)

response=request.urlopen(req)

html=response.read().decode("utf-8")

#print(html)

soup=BeautifulSoup(html,"html.parser")#lxml

index=soup.select("i.board-index")

img=soup.select("img.board-img")

name=soup.select("a")

star=soup.select("p.star")

releasetime=soup.select("p.releasetime")

#print(index[0].text+name[0].text+star[0].text+releasetime[0].text)

foriinrange(10):

print("排名是:"+index[i].text+

"圖片是:"+img[i].get("data-src")+

"電影名:"+name[i].text+

star[i].text.strip()+

releasetime[i].text

)圖3.11圖3.12圖3.123.11和3.12是排名是、圖片是、電影名、主演是等,還有影片播放的時(shí)間等,我們可以看到圖片在PYCHARM中的使用,點(diǎn)擊PYCHARM中的藍(lán)色鏈接,便可看到瀏覽器里出現(xiàn)圖片的形式,3.12為點(diǎn)開(kāi)的圖形中,點(diǎn)開(kāi)排名100的電影為千與千尋這部電影。我們看到圖片占頁(yè)面的比例較小,點(diǎn)開(kāi)其他鏈接也會(huì)出現(xiàn)一樣的結(jié)果。5.在智聯(lián)上獲取有效的招聘信息

fromurllibimportrequest#對(duì)智聯(lián)招聘廣東招聘網(wǎng)進(jìn)行爬蟲(chóng)。

frombs4importBeautifulSoup

url="/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=1&tn=baidu&wd=%E6%B7%98%E5%AE%9D%E7%BD%91&rsv_pq=f412a06900258623&rsv_t=c5b77Gs2Dx4Ykavto6g0Jd2szaiz4aPsyx1RbVkZ%2FwKz3IOTaqL3hCrPQXs&rqlang=cn&rsv_enter=0&prefixsug=%25E6%25B7%2598%25E5%25AE%259D%25E7%25BD%2591&rsp=0"

header={"User-Agent":"Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/75.0.3770.100Safari/537.36"}

#print(html)

req=request.Request(url,headers=header)

response=request.urlopen(req)

html=response.read().decode("utf-8")

#print(html)

soup=BeautifulSoup(html,"html.parser")#lxml

website=soup.select("title")

position=soup.select("list__item__title")

salary=soup.select("salary")

gongsiname=soup.select("content--company")

foriinrange(20):

print(website+

"職位"+position[i].text+

"薪金"+salary[i].text+

"公司名稱(chēng)"+gongsiname[i].text

)圖3.13(二)利用八爪魚(yú)采集器爬取北京住房裝修1.八爪魚(yú)采集器的定義八爪魚(yú)數(shù)據(jù)采集系統(tǒng)以完全自主研發(fā)的分布式云計(jì)算平臺(tái)為核心,可以在很短的時(shí)間內(nèi),輕松從各種不同的網(wǎng)站或者網(wǎng)頁(yè)獲取大量的規(guī)范化數(shù)據(jù),幫助任何需要從網(wǎng)頁(yè)獲取信息的客戶(hù)實(shí)現(xiàn)數(shù)據(jù)自動(dòng)化采集,編輯,規(guī)范化,擺脫對(duì)人工搜索及收集數(shù)據(jù)的依賴(lài),從而降低獲取信息的成本,提高效率。

八爪魚(yú),強(qiáng)大易用的互聯(lián)網(wǎng)數(shù)據(jù)采集平臺(tái),可簡(jiǎn)單快速地將網(wǎng)頁(yè)數(shù)據(jù)轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù),存儲(chǔ)為EXCEL或數(shù)據(jù)庫(kù)等多種形式,并且提供基于云計(jì)算的大數(shù)據(jù)云采集解決方案。2.八爪魚(yú)爬取步驟流程步驟:在八爪魚(yú)采集器中,一共有11個(gè)流程設(shè)計(jì)操作其中分為常用步驟和進(jìn)階步驟常用步驟:1)打開(kāi)網(wǎng)頁(yè) 2)點(diǎn)擊元素 3)循環(huán)4)提取數(shù)據(jù)進(jìn)階步驟:1)輸入文字2)識(shí)別驗(yàn)證碼 3)切換下拉選項(xiàng)4)判斷條件5)移動(dòng)鼠標(biāo)到元素上 6)結(jié)束循環(huán) 7)結(jié)束流程3.簡(jiǎn)易采集北京裝修房屋情況(1)點(diǎn)擊八爪魚(yú)采集器簡(jiǎn)易采集圖3.14(2)確定要采集的頁(yè)面圖3.15(3)選擇采集模板圖3.16(4)定義采集的關(guān)鍵字圖3.17圖3.18(5)啟動(dòng)本地采集圖3.19(6)導(dǎo)出數(shù)據(jù)圖3.20圖3.21(7)數(shù)據(jù)截圖圖3.224.自定義采集中國(guó)統(tǒng)計(jì)網(wǎng)(1)自定義采集各種方式單頁(yè)采集:http:///guide/demo/simplemovies2.html /tutorial/xsksrm/rmjccz /tutorial/xsksrm/rmgnjs單頁(yè)列表頁(yè)采集:http:///tutorial/xsksrm/rmzb/guide/demo/genremovies2.html列表詳情頁(yè)采集:/guide/demo/navmovies2.html分頁(yè)列表頁(yè)采集:/tutorial/hottutorial/guide/demo/genremoviespage1.html/guide/demo/moviespage1.html(2)單頁(yè)采集圖3.23點(diǎn)擊自定義采集中的立即使用在如圖輸入:/guide/demo/simplemovies2.html分別選中你要采集的元素如圖:圖3.24保存并開(kāi)始采集圖3.25導(dǎo)出數(shù)據(jù)即可。(3)單頁(yè)列表采集采集如下地址中三個(gè)中某一個(gè)/tutorial/xsksrm/rmzb/tutorial/xsksrm/rmjccz/tutorial/xsksrm/rmgnjs輸入網(wǎng)址:/tutorial/xsksrm/rmzb分別選中你要采集的元素如圖圖3.26圖3.27其他三個(gè)網(wǎng)址都如此(三)數(shù)據(jù)庫(kù)程序的運(yùn)用1.數(shù)據(jù)和數(shù)據(jù)庫(kù)的定義1)什么是數(shù)據(jù)?對(duì)客觀事物進(jìn)行記錄并且鑒別的符號(hào)模擬數(shù)據(jù)連續(xù)的值聲音,圖片(2)數(shù)字?jǐn)?shù)據(jù)離散的值文本,符號(hào)2)數(shù)據(jù)存儲(chǔ)方式:紙張,磁盤(pán),光盤(pán)等3)數(shù)據(jù)存儲(chǔ)的目的:檢索(查詢(xún))4)數(shù)據(jù)庫(kù)(DBDatabase):按照一定的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)數(shù)據(jù)倉(cāng)庫(kù)。(1)關(guān)系型數(shù)據(jù)庫(kù):以二維表格來(lái)存儲(chǔ)數(shù)據(jù)的(2)二維表格:由行和列組成的(3)一行數(shù)據(jù)叫一條記錄或者“實(shí)體”(4)一列數(shù)據(jù)叫“屬性”(5)非關(guān)系型數(shù)據(jù)庫(kù)(nosqlnotonlysql)2.常用操作命令退出:quit;命令開(kāi)啟服務(wù):netstartmysql問(wèn)題:net沒(méi)有權(quán)限,直接通通管理員身份運(yùn)行,點(diǎn)右鍵選擇管理員身份運(yùn)行C:\Windows\System32\cmd.exe此文件命令停止服務(wù):netstopmysql查看數(shù)據(jù)庫(kù):showdatabases;切換數(shù)據(jù)庫(kù):use數(shù)據(jù)庫(kù)名查看表:showtables;查看表結(jié)構(gòu):desc表名;查幫助的命令:\h或help3.表結(jié)構(gòu)的修改1)增加列2)改變列的名字3)丟掉數(shù)據(jù)行4)清空表5)查看表結(jié)構(gòu)6)添加多條記錄8)數(shù)據(jù)更新9)刪除數(shù)據(jù)行10)查看表中的所有數(shù)據(jù)行4.創(chuàng)建一個(gè)表名叫l(wèi)uo表挑選全部數(shù)據(jù)改變名稱(chēng)3)挑選數(shù)據(jù)的范圍(模糊查詢(xún))4)用主鍵挑選數(shù)據(jù)5)挑選姓名行6)對(duì)數(shù)據(jù)進(jìn)行排序(降序)7)聚合函數(shù)8)統(tǒng)計(jì)數(shù)據(jù)9)分組數(shù)據(jù)10)高級(jí)查詢(xún)(又建立一個(gè)表“zhan”)11)多種條件查詢(xún)12)模糊查詢(xún)13)HAVING函數(shù)5.使用數(shù)據(jù)庫(kù)創(chuàng)建查詢(xún)select*fromemp;#查詢(xún)單條數(shù)據(jù)#as后是改名稱(chēng)SELECTempnoas編號(hào),enameas姓名,salas工資fromemp;FROMempWHEREsal>=3000;SELECT*FROMempWHEREempno=7521;SELECT*FROMempWHEREsal=3000;#查詢(xún)單條數(shù)據(jù),用主鍵SELECT*FROMempWHEREsal>=3000;SELECT*FROMempWHEREsal>=3000;DESCemp;#挑選姓名行SELECT*FROMempWHEREename="KING";#要用引號(hào)#對(duì)數(shù)據(jù)進(jìn)行排序SELECT*FROMempORDERBYsalDESC;#降序#求和函數(shù)SELECTsum(sal)fromemp;#平均函數(shù)SELECTavg(sal)fromemp;SELECTmax(sal)fromemp;SELECTmin(sal)fromemp;(sal)fromemp;#統(tǒng)計(jì)函數(shù)數(shù)據(jù)SELECTcount(*)fromemp;SELECTPASSWORD('root');#添加密碼SELECTMD5('root');SELECT*FROMempGROUPBYdeptno;#分組SELECTaename,aempno,adeptnoFROMemp,emp1as#多種條件查詢(xún)SELECT*FROMempWHEREsal>1000ANDdeptno=20;#去重SELECTDISTINCTjobFROMemp;#模糊查詢(xún),即知一個(gè)數(shù)字查詢(xún)SELECT*FROMempWHEREenameLIKE's%';#第一個(gè)為sSELECT*FROMempWHEREenameLIKE's_';SELECT*FROMempWHEREenameLIKE'%h';SELECT*FROMempWHEREenameLIKE'%a%';#中間含aSELECT*fromempwherecommisNOTNULL;#不是空集SELECT*FROMempWHEREsal>=2000ANDsal<=3000;#取值取范圍SELECT*FROMempWHEREsalBETWEEN2000and3000;SELECT*FROMempWHEREdeptnoIN(10,20);#查詢(xún)一部分SELECT*FROMempLIMIT5;#進(jìn)行分頁(yè)#大寫(xiě)變小寫(xiě)SELECTLOWER('WER')SELECTUPPER('ers')SELECTLENGTH('say');SELECTTRIM('say');SELECTSYSDATE();SELECTdeptno,SUM(sal)FROMempGROUPBYdeptnoHAVINGSUM(sal)>9000;#HAVING可以跟聚合函數(shù)SELECT*FROMempWHEREsal>=2000orsal<=3000;SELECTdeptnoFROMemp;UNIONALLSELECTdeptnoFROMdept;SELECTFROMemp6.使用數(shù)據(jù)庫(kù)挑選數(shù)據(jù)SELECT職位,城市,學(xué)歷,月薪FROMdataORDERBY月薪DESC

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論