无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

六星源課堂:Python網(wǎng)絡(luò)爬蟲基本知識

2022-05-06 10:19 作者:六星源課堂  | 我要投稿

Python中實(shí)現(xiàn)HTTP請求

網(wǎng)頁下載器是爬蟲的核心部分之一,下載網(wǎng)頁就需要實(shí)現(xiàn)HTTP請求,在Python中實(shí)現(xiàn)HTTP請求比較常用的主要有兩個(gè)庫。

一是Urllib庫。Urllib庫是Python內(nèi)置的HTTP請求庫,可以直接調(diào)用。

二是Requests庫。Requests庫是用Python語言編寫的,基于Urllib,采用Apache2

Licensed開源協(xié)議的HTTP庫。它比Urllib更加方便,使用它可以節(jié)約我們大量的工作,完全滿足HTTP的測試需求。Requests是一個(gè)純Python編寫的、簡單易用的HTTP庫。

這兩種實(shí)現(xiàn)HTTP請求的庫中,Requests庫最簡單,功能也最豐富,完全可以滿足HTTP測試需求。

Python中實(shí)現(xiàn)網(wǎng)頁解析

所謂網(wǎng)頁解析器,簡單地說就是用來解析HTML網(wǎng)頁的工具,它主要用于從HTML網(wǎng)頁信息中提取需要的、有價(jià)值的數(shù)據(jù)和鏈接。在Python中解析網(wǎng)頁主要用到下圖所示的3種工具。

一是正則表達(dá)式。正則表達(dá)式(regularexpression)描述了一種字符串匹配的模式(pattern),可以用來檢查一個(gè)串是否含有某種子串,將匹配的子串替換或者從某個(gè)串中取出符合某個(gè)條件的子串等。正則表達(dá)式的優(yōu)點(diǎn)是基本能用正則表達(dá)式來提取想要的所有信息,效率比較高,但缺點(diǎn)也很明顯——正則表達(dá)式不是很直觀,寫起來比較復(fù)雜。

二是Lxml庫。這個(gè)庫使用的是XPath語法,同樣是效率比較高的解析庫。XPath是一門在XML文檔中查找信息的語言。XPath可用來在XML文檔中對元素和屬性進(jìn)行遍歷。XPath比較直觀易懂,配合Chrome瀏覽器或Firefox瀏覽器,寫起來非常簡單,它的代碼速度運(yùn)行快且健壯,一般來說是解析數(shù)據(jù)的最佳選擇,Lxml是本書中解析網(wǎng)頁的主力工具。

三是Beautiful Soup。Beautiful Soup是一個(gè)可以從HTML或XML文件中提取數(shù)據(jù)的Python庫。它能夠通過我們喜歡的轉(zhuǎn)換器實(shí)現(xiàn)慣用的文檔導(dǎo)航、查找。Beautiful Soup編寫效率高,能幫程序員節(jié)省數(shù)小時(shí)甚至數(shù)天的工作時(shí)間。Beautiful Soup比較簡單易學(xué),但相比Lxml和正則表達(dá)式,解析速度慢很多。

總結(jié)起來,無論正則表達(dá)式、Beautiful Soup庫還是Lxml庫,都能滿足我們解析網(wǎng)頁的需求,但Lxml使用的XPath語法簡單易學(xué)、解析速度快。

Python爬蟲框架

前面介紹的HTTP請求庫和網(wǎng)頁解析技術(shù)都是一步步手寫爬蟲時(shí)使用的,Python中還有很多幫助實(shí)現(xiàn)爬蟲項(xiàng)目的半成品——爬蟲框架。爬蟲框架允許根據(jù)具體項(xiàng)目的情況,調(diào)用框架的接口,編寫少量的代碼實(shí)現(xiàn)一個(gè)爬蟲。爬蟲框架實(shí)現(xiàn)了爬蟲要實(shí)現(xiàn)的常用功能,能夠節(jié)省編程人員開發(fā)爬蟲的時(shí)間,幫助編程人員高效地開發(fā)爬蟲。

在Python中,爬蟲框架很多,常見的Python爬蟲框架主要有Scrapy框架、Pyspider框架、Cola框架等。

以上為本次分享的全部內(nèi)容,如果對編程想獲得更多了解,請前往六星源課堂,開啟你的編程之旅~

六星源課堂:Python網(wǎng)絡(luò)爬蟲基本知識的評論 (共 條)

分享到微博請遵守國家法律
柘荣县| 营山县| 财经| 穆棱市| 抚顺市| 包头市| 翁牛特旗| 汾阳市| 新营市| 芷江| 青河县| 富源县| 称多县| 武隆县| 利津县| 杭锦后旗| 达日县| 革吉县| 民县| 昌黎县| 潮安县| 逊克县| 尉犁县| 赤壁市| 呼伦贝尔市| 鄂托克前旗| 封开县| 柳林县| 明水县| 安溪县| 永靖县| 龙口市| 武汉市| 崇信县| 九江市| 丰城市| 安岳县| 庄河市| 林西县| 公主岭市| 湛江市|