溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python爬蟲的基礎(chǔ)知識點

發(fā)布時間:2020-07-20 09:46:21 來源:億速云 閱讀:125 作者:小豬 欄目:開發(fā)技術(shù)

這篇文章主要講解了Python爬蟲的基礎(chǔ)知識點,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

1、什么是爬蟲

爬蟲,即網(wǎng)絡(luò)爬蟲,大家可以理解為在網(wǎng)絡(luò)上爬行的一直蜘蛛,互聯(lián)網(wǎng)就比作一張大網(wǎng),而爬蟲便是在這張網(wǎng)上爬來爬去的蜘蛛咯,如果它遇到資源,那么它就會抓取下來。想抓取什么?這個由你來控制它咯。

比如它在抓取一個網(wǎng)頁,在這個網(wǎng)中他發(fā)現(xiàn)了一條道路,其實就是指向網(wǎng)頁的超鏈接,那么它就可以爬到另一張網(wǎng)上來獲取數(shù)據(jù)。這樣,整個連在一起的大網(wǎng)對這之蜘蛛來說觸手可及,分分鐘爬下來不是事兒。

2、瀏覽網(wǎng)頁的過程

在用戶瀏覽網(wǎng)頁的過程中,我們可能會看到許多好看的圖片,比如 http://image.baidu.com/ ,我們會看到幾張的圖片以及百度搜索框,這個過程其實就是用戶輸入網(wǎng)址之后,經(jīng)過DNS服務(wù)器,找到服務(wù)器主機(jī),向服務(wù)器發(fā)出一個請求,服務(wù)器經(jīng)過解析之后,發(fā)送給用戶的瀏覽器 HTML、JS、CSS 等文件,瀏覽器解析出來,用戶便可以看到形形色色的圖片了。

因此,用戶看到的網(wǎng)頁實質(zhì)是由 HTML 代碼構(gòu)成的,爬蟲爬來的便是這些內(nèi)容,通過分析和過濾這些 HTML 代碼,實現(xiàn)對圖片、文字等資源的獲取。

3、URL的含義

URL,即統(tǒng)一資源定位符,也就是我們說的網(wǎng)址,統(tǒng)一資源定位符是對可以從互聯(lián)網(wǎng)上得到的資源的位置和訪問方法的一種簡潔的表示,是互聯(lián)網(wǎng)上標(biāo)準(zhǔn)資源的地址?;ヂ?lián)網(wǎng)上的每個文件都有一個唯一的URL,它包含的信息指出文件的位置以及瀏覽器應(yīng)該怎么處理它。

URL的格式由三部分組成:

①第一部分是協(xié)議(或稱為服務(wù)方式)。

②第二部分是存有該資源的主機(jī)IP地址(有時也包括端口號)。

③第三部分是主機(jī)資源的具體地址,如目錄和文件名等。

爬蟲爬取數(shù)據(jù)時必須要有一個目標(biāo)的URL才可以獲取數(shù)據(jù),因此,它是爬蟲獲取數(shù)據(jù)的基本依據(jù),準(zhǔn)確理解它的含義對爬蟲學(xué)習(xí)有很大幫助。

4、環(huán)境的配置

學(xué)習(xí)Python,當(dāng)然少不了環(huán)境的配置,最初我用的是Notepad++,不過發(fā)現(xiàn)它的提示功能實在是太弱了,于是,在Windows下我用了PyCharm,在Linux下我用了Eclipse for Python,另外還有幾款比較優(yōu)秀的IDE,大家可以參考這篇文章 學(xué)習(xí)Python推薦的IDE 。好的開發(fā)工具是前進(jìn)的推進(jìn)器,希望大家可以找到適合自己的IDE。

知識點補充:

什么是爬蟲和爬蟲的基本邏輯

“爬蟲”是一種形象的說法?;ヂ?lián)網(wǎng)比喻成一張大網(wǎng),爬蟲是一個程序或腳本在這種大網(wǎng)上爬走。碰到蟲子(資源),若是所需的資源就獲取或下載下來。這個資源通常是網(wǎng)頁、文件等等。可以通過該資源里面的url鏈接,順藤摸瓜繼續(xù)爬取這些鏈接的資源。

你也可以把爬蟲當(dāng)作模擬我們正常上網(wǎng)。打開網(wǎng)頁并分析網(wǎng)頁的內(nèi)容獲取我們想要的東西。

那么,這里就涉及到http傳輸協(xié)議等相關(guān)的知識。

我們通常打開一個網(wǎng)頁,基本上都是打開一個Url鏈接即可。在這個過程當(dāng)中,實際上發(fā)生了很多事情。

打開一個Url鏈接,瀏覽器自動向Url鏈接的服務(wù)器發(fā)送一個請求(Request),告訴服務(wù)器說我需要訪問這個Url鏈接的內(nèi)容,請返回數(shù)據(jù)給我。服務(wù)器就處理該請求,響應(yīng)該請求并返回結(jié)果給瀏覽器。

既然爬蟲需要模擬該過程。根據(jù)http協(xié)議,爬蟲需要構(gòu)造一個請求(Request),發(fā)到請求到目標(biāo)服務(wù)器(通常是Url鏈接)。然后等待服務(wù)器的響應(yīng)(Response)。

所有相關(guān)的數(shù)據(jù)都在這個響應(yīng)結(jié)果當(dāng)中,這個就是爬蟲實現(xiàn)的基本邏輯。

看完上述內(nèi)容,是不是對Python爬蟲的基礎(chǔ)知識點有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI