urllib模組常用方法

2022-09-12 15:21:21 字數 2241 閱讀 6056

import urllib.parse

## urlparse() 對url進行解析,並對url按照一定格式進行拆分,返回乙個包含6個字串的元組(協議,位置,路徑,引數,查詢,判斷), 可以將獲得的元組強轉為list來進行取值

## urlunparse() 將上面urlparse解析後的資料組合成url

## urlsplit() 和urlparse()用法一樣,只不過返回結果中沒有params這個屬性

## urljoin() url拼接,以後者為標準

url1 = ""

url2 = "/index/add.html"

a_url = urllib.parse.urljoin(url1, url2)

print(a_url) #

## urlencode() 將字典型別資料解析成查詢字串型別資料, 如果請求數中有中文則會進行編碼

data =

qs = urllib.parse.urlencode(data)

print(qs) # name=tony&age=25

## parse_qs() 將查詢字串型別資料,解碼成字典型別資料

qs = "name=tony&age=25"

print(urllib.parse.parse_qs(qs)) //

## quote() 編碼 unquote 解碼

encode_url = urllib.parse.quote("") # 對一些符號進行編碼

print(encode_url)

unencode_url = urllib.parse.unquote(encode_url) # 解碼

print(unencode_url)

## quote_plus 編碼 unquote_plus 解碼

print(urllib.parse.unquote('1+2')) #不解碼加號 '1+2'

print(urllib.parse.unquote_plus('1+2')) #把加號解碼為空格'1 2'

import urllib.request

## urlopen() 開啟乙個網頁

## request() 新增請求頭,請求資料等

headers =

req = urllib.request.request("",headers=headers)

resp = urllib.request.urlopen(req)

print(resp.read())

## build_opener() urlopen底層函式,參考

# 第一步:構建乙個httphandler 處理器物件,支援處理http請求

# 第二步:呼叫urllib2.build_opener()方法,建立支援處理http請求的opener物件

# 第三步:構建 request請求

request = urllib.request.request("")

# 第四步:呼叫自定義opener物件的open()方法,傳送request請求

response = opener.open(request)

# 第五步:獲取伺服器響應內容

print(response.read())

## urlretrieve() 將網頁儲存到本地

Python核心模組 urllib模組

現在python基本入門了,現在開始要進軍如何寫爬蟲了!先把最基本的urllib模組弄懂吧。開啟乙個url的方法,返回乙個檔案物件,然後可以進行類似檔案物件的操作。本例試著開啟google import urllib f urllib.urlopen firstline f.readline 讀取h...

Python模組之urllib模組

py2.x urllib庫 urllin2庫 py3.x urllib庫 變化 在pytho2.x中使用import urllib2 對應的,在python3.x中會使用import urllib.request,urllib.error。在pytho2.x中使用import urllib 對應的,...

urllib模組的使用

urllib.request.urlopen url,data none,timeout,cafile none,capath none,cadefault false,context none 直接用urllib.request模組的urlopen 獲取頁面,page的資料資料格式為bytes型別...