1. 程式人生 > >python學習--quote()函式

python學習--quote()函式

遮蔽特殊的字元、比如如果url裡面的空格!url裡面是不允許出現空格的。

在 Python2.x 中的用法是:
urllib.quote(text)
Python3.x 中是
urllib.parse.quote(text)
按照標準, URL 只允許一部分 ASCII 字元(數字字母和部分符號),其他的字元(如漢字)是不符合 URL 標準的。
所以 URL 中使用其他字元就需要進行 URL 編碼。

URL 中傳引數的部分(query String),格式是:
name1=value1&name2=value2&name3=value3
假如你的 name 或者 value 值中有『&』或者『=』等符號,就當然會有問題。所以URL中的引數字串也需要把『&=』等符號進行編碼。

URL編碼的方式是把需要編碼的字元轉化為 %xx 的形式。通常 URL 編碼是基於 UTF-8 的(當然這和瀏覽器平臺有關)。
例子:
比如『我』,unicode 為 0x6211, UTF-8 編碼為 0xE6 0x88 0x91,URL 編碼就是
%E6%88%91
在 JavaScript 中,提供了 encodeURI 和 encodeURIComponent 兩種方法對 URL 進行編碼;
Python 的 urllib 庫中提供了 quote 和 quote_plus 兩種方法。
因為是針對不同場景設計,以上四種方法編碼的範圍均不相同,比如 quote 除了 -._/09AZaz ,都會進行編碼。quote_plus 比 quote 『更進』一些,它還會編碼 /