使用python對url編碼解碼

2021-07-24 15:00:56 字數 555 閱讀 1399

url中的query帶有特殊字元(不是url的保留字)時需要進行編碼。

當url中帶有漢字時,需要特殊的處理才能正確編碼,以下都只針對這種情形,當然也適用於純英文本元的url。

(1) url編碼:

import urllib

url = '哈哈'

url = url.decode('gbk', 'replace')

print urllib.quote(url.encode('utf-8', 'replace'))

結果: 哈哈

(2) url解碼:

import urllib

encoded_url = '

哈哈'

print urllib.unquote(encoded_url).decode('utf-8', 'replace').encode('gbk', 'replace')

函式呼叫的引數以及結果都是utf-8編碼的,所以在對url編碼時,需要將引數串的編碼從原始編碼轉換成utf-8,

對url解碼時,需要將解碼結果從utf-8轉換成原始編碼格式

**:

使用python對url編碼解碼

對url進行編碼和解碼,python提供了很方便的介面進行呼叫。1.urllib.quote string safe 對字串進行編碼。引數 safe 指定了不需要編碼的字元 2.urllib.unquote string 對字串進行解碼 3.urllib.quote plus string safe...

Python對URL編碼和解碼

在做介面測試時,時常會發現抓取的介面引數中含有這種資料 3d 5b 7b 22mainspucode 22 3a 22spu66668 22 2c 22mainskucode 22 3a 22536963999401508874 當請求資料為字典data 且引數中包含中文或者?等特殊符號時,需要通過...

python2 對URL編碼進行編譯

在請求頁面時有時會返回類似 e8 af a5985 e5 a4 a7 e5 ad a6 e5 b8 b8 e5 b9 b4 e4 bd 8d e5 b1 85 e5 9b bd e5 86 85 e5 89 8d e4 ba 的編碼方式,為url編碼,查閱資料後都沒有成功轉碼,原因是 from ur...