介面測試中遇到這種情況:get請求的傳參有中文,以致url中有中文編碼。
下面是常見的一種編碼解碼方式:
from urllib.request import quote, unquote
url = "住院"
res1 = quote(url, safe=";/?:@&=+$,", encoding="utf-8") # 編碼
print(res1) # %e4%bd%8f%e9%99%a2
res2 = unquote(res1, encoding='utf-8') # 解碼
print(res2) # 住院
參考: python url中文亂碼
1.url 只允許一部分 ascii 字元 數字字母和部分符號 其他的字元 如漢字 是不符合 url 標準.所以 url 中使用其他字元就需要進行 url 編碼。2.通常 url 編碼是基於 utf 8 的 當然這和瀏覽器平台有關 比如 我 unicode 為 0x6211,utf 8 編碼為 0x...
Python Url編碼和解碼
一 為什麼要進行url編碼 url帶引數的請求格式為 舉例 當請求資料為字典data 且引數中包含中文或者?等特殊符號時,通過url編碼,將data轉化為特定格式k1 v1 k2 v2,並且將中文和特殊符號進行編碼,避免發生歧義 二 url編碼 1 urlencode from urllib imp...
Python Url編碼和解碼
一 為什麼要進行url編碼 url帶引數的請求格式為 舉例 當請求資料為字典data 且引數中包含中文或者?等特殊符號時,通過url編碼,將data轉化為特定格式k1 v1 k2 v2,並且將中文和特殊符號進行編碼,避免發生歧義 二 url編碼 1 urlencode from urllib imp...