在瀏覽器發送請求時會對錶單請求數據與查詢字符串進行一種URL編碼,這種編碼旨在將數據中的影響HTTP的字符進行轉換,變爲HTTP允許的字符,Python使用urllib庫進行轉換
from urllib import parse
#數據對象
data = {
"a":"1",
"b":"3",
"x":"張三",
"y":"李四"
}
#進行url_encode編碼,編碼結果爲查詢字符串形式,即進行url編碼,然後用a=1&b=2形式拼接鍵值對
text = parse.urlencode(data)
print(text)
#進行url解碼,但是不會將拼接形式轉換爲字典形式
text1 = parse.unquote(text)
print(text1)
#進行url編碼,但是這步會將&與=一起轉碼
text2 = parse.quote(text1)
print(text2)
a = "我是大偵探"
#url編碼
b = parse.quote(a)
print(b)
#url解碼
c = parse.unquote(b)
print(c)
執行結果爲
a=1&b=3&x=%E5%BC%A0%E4%B8%89&y=%E6%9D%8E%E5%9B%9B
a=1&b=3&x=張三&y=李四
a%3D1%26b%3D3%26x%3D%E5%BC%A0%E4%B8%89%26y%3D%E6%9D%8E%E5%9B%9B
%E6%88%91%E6%98%AF%E5%A4%A7%E4%BE%A6%E6%8E%A2
我是大偵探
1.parse.urlencode
url編碼函數,參數爲dict字典,會將字典鍵值對以查詢字符串方式拼接,並且對每個值進行url編碼,返回拼接後的字符串
2.parse.quote
輸入輸出都是字符串,單純進行url編碼
3.parse.unquote
輸入輸出都是字符串,單純進行url解碼