1. 程式人生 > >python urllib.quote 解決Python傳遞中文引數給URL

python urllib.quote 解決Python傳遞中文引數給URL

今天有個需要需要傳遞中文引數給URL

但是在GBK環境下的指令碼傳遞GBK的引數老是給我報UNICODE的解碼錯誤。煩的很。

所以我們果斷選擇用urlencode來處理中文,

由於國內外網站編碼不同,國內是GBK的,國外是UTF8的。

>>> import sys
>>> sys.stdin.encoding
'GBK'
表示我們的環境是GBK的
>>> import urllib
>>> urllib.quote('編碼坑爹')
'%B1%E0%C2%EB%BF%D3%B5%F9'

這樣我就得到了GBK的url編碼,用這個編碼直接傳遞給URL就能直接解釋出中文。不需要我們再處理了

>>> urllib.quote('編碼坑爹'
.decode('gbk').encode('utf-8')) '%E7%BC%96%E7%A0%81%E5%9D%91%E7%88%B9' 這是UTF-8的URL編碼
> import sys >>> sys.stdin.encoding 'GBK' 表示我們的環境是GBK的 >>> import urllib >>> urllib.quote('編碼坑爹') '%B1%E0%C2%EB%BF%D3%B5%F9' 這樣我就得到了GBK的url編碼,用這個編碼直接傳遞給URL就能直接解釋出中文。不需要我們再處理了 >>> urllib.quote('編碼坑爹'
.decode('gbk').encode('utf-8')) '%E7%BC%96%E7%A0%81%E5%9D%91%E7%88%B9' 這是UTF-8的URL編碼