十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊
量身定制 + 運(yùn)營維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
我們開始來談?wù)刾ython的爬蟲。
網(wǎng)絡(luò)爬蟲是一種按照一定的規(guī)則,自動地抓取萬維網(wǎng)信息的程序或者腳本。另外一些不常使用的名字還有螞蟻、自動索引、模擬程序或者蠕蟲。互聯(lián)網(wǎng)猶如一個大蜘蛛網(wǎng),我們的爬蟲就猶如一個蜘蛛,當(dāng)在互聯(lián)網(wǎng)遇到所需要的資源,我們就會爬取下來,即為爬蟲是一個請求網(wǎng)站并且提取數(shù)據(jù)的自動化程序。
1)請求,request即為我們的請求,當(dāng)我們在瀏覽器內(nèi)輸入網(wǎng)址,敲擊回車時,這時瀏覽器就會發(fā)送消息給該網(wǎng)址所在的服務(wù)器,這個過程叫做HTTP Request
2)響應(yīng),response即為我們的響應(yīng),服務(wù)器在接收到瀏覽器發(fā)送的消息后,能夠根據(jù)瀏覽器發(fā)送消息的內(nèi)容做出相應(yīng)的處理,然后把消息回傳給瀏覽器。這個過程就做HTTP Response。瀏覽器收到服務(wù)器的Response信息后,會對信息進(jìn)行處理,然后展示。
1)請求方式,請求方式主要包含get,post,另外還有put,head,delete,options等,但我們常用的、常見的還是get和post請求。
get請求:get請求方式所有的參數(shù)都包含在URL地址里,get請求可以直接在瀏覽器地址欄內(nèi)輸入URL地址,然后直接訪問。
post請求:比get方式多包含一個formdata數(shù)據(jù),且參數(shù)沒有在URL地址內(nèi)。不可以直接在地址欄訪問,需要構(gòu)造一個form表單,進(jìn)行提交訪問。
同時post請求所有參數(shù)不顯示地址欄內(nèi),相對于get請求來說更安全。
2)請求URL,URL全稱統(tǒng)一資源定位符,如一個網(wǎng)頁文檔、一張圖片、一個視頻等都可以用URL唯一來確定。
3)請求頭,包含請求時的頭部信息,如User-Agent、Host、Cookies等信息,請求頭是一個很重要的參數(shù),在很多爬蟲里需要設(shè)置請求頭信息,
一般權(quán)限驗(yàn)證,瀏覽器類型等信息,如下圖所示:
4)請求體,請求時額外攜帶的數(shù)據(jù),如表單提交時的表單數(shù)據(jù),一般來說get方式請求時,都沒有請求體。
1)響應(yīng)狀態(tài),有多種響應(yīng)狀態(tài),如200代表成功,404找不到頁面,500服務(wù)器錯誤
擴(kuò)展:
-1xx :報告的 -請求被接收到,繼續(xù)處理
-2xx :成功 - 被成功地接收(received),理解(understood),接受(accepted)的動作 。
-3xx :重發(fā) - 為了完成請求必須采取進(jìn)一步的動作。
-4xx :客戶端出錯 - 請求包括錯的語法或不能被滿足。
-5xx :服務(wù)器出錯 - 服務(wù)器無法完成顯然有效的請求。
2)響應(yīng)頭,如內(nèi)容類型、內(nèi)容長度、服務(wù)器信息、設(shè)置Cookie等等信息。如圖所示:
3)響應(yīng)體,最主要的部分,包含了請求資源的內(nèi)容,如網(wǎng)頁HTML,圖片,二進(jìn)制數(shù)據(jù)(視頻,圖片等)等信息。
我們爬取的數(shù)據(jù)大部分就是從這個部分獲取的
1)python環(huán)境,最好是python3,python2在2020年就不再維護(hù)了,語法還是有一定差異的,我建議使用python3。
2)redis,mongo分關(guān)系型數(shù)據(jù)庫,安裝過程自行百度。(后期會有專門的博客來說明講解非關(guān)系型數(shù)據(jù)庫)。
3)scrapy環(huán)境,pip install scrapy即可安裝。
4)Urllib庫,Requests庫,BeautifulSoup庫,PyQuery,Selenium和與其相關(guān)聯(lián)的環(huán)境配置(后面我們會逐個來說明每一個庫和其操作使用方法)。
總結(jié):爬蟲是一個請求網(wǎng)站并且提取數(shù)據(jù)的自動化程序。有的是通過原生html標(biāo)簽就可以獲取到數(shù)據(jù),則有的需要通過解析ajax請求來取得數(shù)據(jù)。
#×××和學(xué)習(xí)資料。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。