python構(gòu)建基礎(chǔ)的爬蟲(chóng)教學(xué)
爬蟲(chóng)具有域名切換、信息收集以及信息存儲(chǔ)功能。
這里講述如何構(gòu)建基礎(chǔ)的爬蟲(chóng)架構(gòu)。
1、urllib庫(kù):包含從網(wǎng)絡(luò)請(qǐng)求數(shù)據(jù)、處理cookie、改變請(qǐng)求頭和用戶處理元數(shù)據(jù)的函數(shù)。是python標(biāo)準(zhǔn)庫(kù).urlopen用于打開(kāi)讀取一個(gè)從網(wǎng)絡(luò)獲取的遠(yuǎn)程對(duì)象。能輕松讀取HTML文件、圖像文件及其他文件流。
2、beautifulsoup庫(kù):通過(guò)定位HTML標(biāo)簽格式化和組織復(fù)雜的網(wǎng)絡(luò)信息,用python對(duì)象展現(xiàn)XML結(jié)構(gòu)信息。不是標(biāo)準(zhǔn)庫(kù),可用pip安裝。常用的對(duì)象是BeautifulSoup對(duì)象。
1、基礎(chǔ)爬蟲(chóng)
爬蟲(chóng)需要首先import對(duì)象,然后打開(kāi)網(wǎng)址,使用BeautifulSoup對(duì)網(wǎng)頁(yè)內(nèi)容進(jìn)行讀取。

2、使用print輸出打開(kāi)的網(wǎng)址的內(nèi)容。

3、從輸出中可以看出內(nèi)容的結(jié)構(gòu)為:

4、輸出內(nèi)容中的html-body-h1的內(nèi)容可使用四種語(yǔ)句。


5、BeautifulSoup可提取HTML、XML文件的任意節(jié)點(diǎn)的信息,只需要目標(biāo)信息旁邊或附近有標(biāo)記。
1、Error在運(yùn)行代碼時(shí),經(jīng)常會(huì)出現(xiàn)錯(cuò)誤,看懂錯(cuò)誤出現(xiàn)的原因才能解決存在的問(wèn)題。
2、在html=urlopen('')中會(huì)發(fā)生兩種錯(cuò)誤:網(wǎng)頁(yè)在服務(wù)器上不存在或服務(wù)器不存在。
3、網(wǎng)頁(yè)在服務(wù)器上不存在會(huì)出現(xiàn)HTTPError,可使用try語(yǔ)句進(jìn)行處理。
當(dāng)程序返回HTTPError錯(cuò)誤代碼時(shí),會(huì)顯示錯(cuò)誤內(nèi)容。

4、服務(wù)器不存在時(shí),urlopen會(huì)返回None.
可使用判斷語(yǔ)句進(jìn)行檢測(cè)。
調(diào)用的標(biāo)簽不存在會(huì)出現(xiàn)None,調(diào)用不存在的標(biāo)簽下的子標(biāo)簽,就會(huì)出現(xiàn)AttributeError錯(cuò)誤。

總結(jié):以上就是關(guān)于python構(gòu)建基礎(chǔ)的爬蟲(chóng)的基礎(chǔ)步驟內(nèi)容,感謝大家的閱讀和對(duì)腳本之家的支持。
- Python反爬蟲(chóng)技術(shù)之防止IP地址被封殺的講解
- Python3爬蟲(chóng)全國(guó)地址信息
- python爬蟲(chóng)獲取小區(qū)經(jīng)緯度以及結(jié)構(gòu)化地址
- Python數(shù)據(jù)抓取爬蟲(chóng)代理防封IP方法
- python3爬蟲(chóng)怎樣構(gòu)建請(qǐng)求header
- python爬蟲(chóng)獲取新浪新聞教學(xué)
- Python爬蟲(chóng)文件下載圖文教程
- python爬蟲(chóng)獲取百度首頁(yè)內(nèi)容教學(xué)
- python爬蟲(chóng)超時(shí)的處理的實(shí)例
- python3.4爬蟲(chóng)demo
相關(guān)文章
matplotlib實(shí)戰(zhàn)之餅圖繪制詳解
餅圖,或稱餅狀圖,是一個(gè)劃分為幾個(gè)扇形的圓形統(tǒng)計(jì)圖表,這篇文章主要為大家詳細(xì)介紹了如何使用Matplotlib繪制餅圖,需要的小伙伴可以參考下2023-08-08
python matplotlib保存圖片不全問(wèn)題及解決
這篇文章主要介紹了python matplotlib保存圖片不全問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
深入淺析Python科學(xué)計(jì)算庫(kù)Scipy及安裝步驟
這篇文章主要介紹了Python科學(xué)計(jì)算庫(kù)—Scipy的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-10-10
numpy中np.append()函數(shù)用法小結(jié)
在numpy的函數(shù)庫(kù)中,np.append()函數(shù)是一個(gè)常用的數(shù)組操作函數(shù),它在進(jìn)行數(shù)組操作時(shí)能夠?qū)蓚€(gè)數(shù)組進(jìn)行拼接,并返回一個(gè)拼接后的新數(shù)組,下面就來(lái)介紹一下具體用法,感興趣的可以了解一下2023-11-11
Python實(shí)戰(zhàn)基礎(chǔ)之Pandas統(tǒng)計(jì)某個(gè)數(shù)據(jù)列的空值個(gè)數(shù)
我們?cè)谔幚頂?shù)據(jù)的時(shí)候,經(jīng)常需要檢查數(shù)據(jù)的質(zhì)量,也需要知道出問(wèn)題的數(shù)據(jù)在哪個(gè)位置,下面這篇文章主要給大家介紹了關(guān)于Python實(shí)戰(zhàn)基礎(chǔ)之利用Pandas統(tǒng)計(jì)某個(gè)數(shù)據(jù)列空值個(gè)數(shù)的相關(guān)資料,需要的朋友可以參考下2022-08-08
Python 調(diào)用 zabbix api的方法示例
這篇文章主要介紹了Python 調(diào)用 zabbix api的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01
對(duì)于Python的Django框架使用的一些實(shí)用建議
這篇文章主要介紹了對(duì)于Python的Django框架使用的一些實(shí)用建議,包括一些優(yōu)秀模塊的介紹,要的朋友可以參考下2015-04-04
利用pipenv和pyenv管理多個(gè)相互獨(dú)立的Python虛擬開(kāi)發(fā)環(huán)境
這篇文章主要介紹了利用pipenv和pyenv管理多個(gè)相互獨(dú)立的Python虛擬開(kāi)發(fā)環(huán)境,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
淺談python下含中文字符串正則表達(dá)式的編碼問(wèn)題
今天小編就為大家分享一篇淺談python下含中文字符串正則表達(dá)式的編碼問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12

