parse模塊和error模塊的相關(guān)知識

parse 可以對url 拆分、組合、編碼、解碼、拼接
from urllib import parse,error,request

parse.urlencode():將字典類型的參數(shù)轉(zhuǎn)為url編碼格式
form_data = {
'sex': 'f',
'key': '',
'stc': '1: 11, 2: 20.28, 23: 1',
'sn': 'default',
}

get請求直接使用urlencode將參數(shù)轉(zhuǎn)為url編碼格式
form_data1 = parse.urlencode(form_data)
print(form_data1)

post請求urlencode將參數(shù)轉(zhuǎn)為url編碼格式,然后使用encode方法將字符串轉(zhuǎn)為bytes類型
form_data2 = parse.urlencode(form_data).encode('utf-8')
print(form_data2)

parse.parse_qs():將url編碼格式轉(zhuǎn)換為字典
parmas = parse.parse_qs(form_data1)
print(parmas)

key = '厲害了我的國'

parse.quote():將中文轉(zhuǎn)為url編碼
result = parse.quote(key)
print(result)

parse.unquote():將url編碼的字符轉(zhuǎn)化為中文字符
unquote = parse.unquote(result)
print(unquote)

parse.urljoin():將不完整的url參照基類url,拼接完整
base_url = 'http://www.qidian.com/book/123456.html'
sub_url = '123456789.html'
fun = parse.urljoin(base_url,sub_url)
print(fun)

ParseResult(
scheme='http', 協(xié)議
netloc='www.qidian.com', ip域
path='/book/123456.html', 路徑
params='', 參數(shù)
query='', 查詢參數(shù)(?后面拼接的參數(shù))
fragment='' 錨點
)

parse.urlparse():將url進行拆分
result = parse.urlparse(base_url)
print(result)
print(result.scheme)

parse.urlunparse(): 將url的各個部分合并為一個完整的url
url_datas = ('http','www.baidu.com','book','','wd=xxx','1234')
fun_url = parse.urlunparse(url_datas)
print(fun_url)

URLError和HTTPError

URLError:來自urllib庫的error模塊,繼承自O(shè)SError,由request模塊產(chǎn)生的異常都可以通過捕捉這個類來處理.

產(chǎn)生的原因主要有:
  • 沒有網(wǎng)絡(luò)連接
  • 服務(wù)器連接失敗
  • 找不到指定的服務(wù)器

HTTPError是URLError的子類,我們發(fā)出一個請求時,服務(wù)器上都會對應(yīng)一個response應(yīng)答對象,其中它包含一個數(shù)字"響應(yīng)狀態(tài)碼"。

有三個屬性:

code:返回HTTP的狀態(tài)碼
reason:返回錯誤原因
headers:返回請求頭

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • parse 可以對url 拆分、組合、編碼、解碼、拼接 parse.urlencode():將字典類型的參數(shù)轉(zhuǎn)為u...
    優(yōu)秀的人A閱讀 455評論 0 0
  • 什么是爬蟲? 就是一段自動抓取互聯(lián)網(wǎng)數(shù)據(jù)的程序或腳本 網(wǎng)頁的三大特性 1.每個網(wǎng)頁都有自己唯一的URL地址(統(tǒng)一資...
    bda1a329d33d閱讀 537評論 0 0
  • 學(xué)習(xí)一門技術(shù),總是要踩好多坑,然后收貨一大堆疑惑,這么多相似的方式該學(xué)哪個呢?外面公司常用的是哪個呢?就比如pyt...
    徐同學(xué)呀閱讀 1,965評論 1 11
  • https://www.cnblogs.com/xiao-apple36/p/8433400.html urlli...
    長風(fēng)哥哥閱讀 5,339評論 0 1
  • 上網(wǎng)原理 1、爬蟲概念 爬蟲是什麼? 蜘蛛,蛆,代碼中,就是寫了一段代碼,代碼的功能從互聯(lián)網(wǎng)中提取數(shù)據(jù) 互聯(lián)網(wǎng): ...
    riverstation閱讀 8,649評論 1 2

友情鏈接更多精彩內(nèi)容