python構(gòu)建基礎(chǔ)的爬蟲教學(xué)
爬蟲具有域名切換、信息收集以及信息存儲(chǔ)功能。
這里講述如何構(gòu)建基礎(chǔ)的爬蟲架構(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用于打開讀取一個(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ǔ)爬蟲
爬蟲需要首先import對(duì)象,然后打開網(wǎng)址,使用BeautifulSoup對(duì)網(wǎng)頁(yè)內(nèi)容進(jìn)行讀取。
2、使用print輸出打開的網(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ǔ)步驟內(nèi)容,感謝大家的閱讀和對(duì)腳本之家的支持。
相關(guān)文章
利用Python和C++實(shí)現(xiàn)解析gltf文件
gltf是類似于stl、obj、ply等常見(jiàn)的3D對(duì)象存儲(chǔ)格式,它被設(shè)計(jì)出來(lái)是為了便于渲染的數(shù)據(jù)轉(zhuǎn)換和傳輸,本文為大家介紹了使用Python和C++解析gltf文件的方法,感興趣的可以了解下2023-09-09python實(shí)現(xiàn)b站直播自動(dòng)發(fā)送彈幕功能
這篇文章主要介紹了python如何實(shí)現(xiàn)b站直播自動(dòng)發(fā)送彈幕,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-02-02python出現(xiàn)更新庫(kù)失敗A?new?release?of?pip?is?available:?23.0.
學(xué)習(xí)了Python我們知道它自帶了很多的庫(kù),同時(shí)我們還需要對(duì)某個(gè)庫(kù)進(jìn)行升級(jí),這篇文章主要給大家介紹了關(guān)于python出現(xiàn)更新庫(kù)失敗A?new?release?of?pip?is?available:?23.0.1?->?23.3的解決辦法,需要的朋友可以參考下2024-03-03利用Django框架中select_related和prefetch_related函數(shù)對(duì)數(shù)據(jù)庫(kù)查詢優(yōu)化
這篇文章主要介紹了利用Python的Django框架中select_related和prefetch_related函數(shù)對(duì)數(shù)據(jù)庫(kù)查詢的優(yōu)化的一個(gè)實(shí)踐例子,展示如何在實(shí)際中利用這兩個(gè)函數(shù)減少對(duì)數(shù)據(jù)庫(kù)的查詢次數(shù),需要的朋友可以參考下2015-04-04python3.4下django集成使用xadmin后臺(tái)的方法
本篇文章主要介紹了python3.4下django集成使用xadmin后臺(tái)的方法,具有一定的參加價(jià)值,有興趣的可以了解一下2017-08-08python爬蟲之利用selenium模塊自動(dòng)登錄CSDN
這篇文章主要介紹了python爬蟲之利用selenium模塊自動(dòng)登錄CSDN,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有很好地幫助,需要的朋友可以參考下2021-04-04