您好,登錄后才能下訂單哦!
這篇文章主要介紹python urllib模塊的使用方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
urllib 是一個(gè) python 內(nèi)置包,不需要額外安裝即可使用,包里面包含了以下幾個(gè)用來(lái)處理 url 的模塊:
l urllib.request可以用來(lái)發(fā)送request和獲取request的結(jié)果
l urllib.error包含了urllib.request產(chǎn)生的異常
l urllib.parse用來(lái)解析和處理URL
l urllib.robotparse用來(lái)解析頁(yè)面的robots.txt文件
1、urllib.request 模塊
urllib.request 模塊定義了以下幾個(gè)函數(shù)。
語(yǔ)法:
urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)
意義:
該函數(shù)主要用于模擬網(wǎng)站請(qǐng)求,返回一個(gè) HTTPResponse 類型的對(duì)象。
2、urlopen 函數(shù)返回類型
urlopen 函數(shù)請(qǐng)求返回一個(gè) HTTPResponse 響應(yīng)上下文,或者請(qǐng)求異常拋出 URLError 協(xié)議錯(cuò)誤,一般有如下屬性:
l geturl(),返回檢索的 url,通常用于判定是否進(jìn)行了重定向。
l info(),返回網(wǎng)頁(yè)的頭信息。
l getcode(),返回 HTTPResponse 響應(yīng)的狀態(tài)碼。
3、urllib.error.URLError 異常
URLError 類繼承自 OSError 類,是 error 異常模塊的基類,由request模塊產(chǎn)生的異常都可以通過(guò)捕獲這個(gè)類來(lái)處理。URLError 只有一個(gè)屬性 reason,即返回錯(cuò)誤的原因。
應(yīng)用實(shí)例:
# 在請(qǐng)求連接時(shí)候捕獲網(wǎng)址錯(cuò)誤引發(fā)的異常 from urllib import request, error try: response = request.urlopen('https://www,baidu,com') except error.URLError as e: print(e.reason)
4、urllib.parse 模塊
urllib.parse 模塊定義了一個(gè)處理 url 的標(biāo)準(zhǔn)接口,用來(lái)實(shí)現(xiàn) url 字符串的抽取、合并以及鏈接轉(zhuǎn)換。
5、urllib.robotparse 模塊
rebotparser 模塊提供了一個(gè) RobotFileParser 類,主要用來(lái)解析網(wǎng)站上發(fā)布的 robots.txt,然后根據(jù)解析內(nèi)容判斷爬蟲是否有權(quán)限來(lái)爬取這個(gè)網(wǎng)頁(yè)。
以上是python urllib模塊的使用方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。