什么編碼url參數(shù)?
urllib 庫中的 quote? 在 Python2.x 中的用法是:
Python3.x 中是按照標(biāo)準(zhǔn), URL 只允許一部分 ASCII 字符(數(shù)字字母和部分符號(hào)),其他的字符(如漢字)是不符合 URL 標(biāo)準(zhǔn)的。所以 URL 中使用其他字符就需要進(jìn)行 URL 編碼。URL 中傳參數(shù)的部分(query String),格式是:假如你的 name 或者 value 值中有『&』或者『=』等符號(hào),就當(dāng)然會(huì)有問題。所以URL中的參數(shù)字符串也需要把『&=』等符號(hào)進(jìn)行編碼。URL編碼的方式是把需要編碼的字符轉(zhuǎn)化為 %xx 的形式。通常 URL 編碼是基于 UTF-8 的(當(dāng)然這和瀏覽器平臺(tái)有關(guān))。例子:比如『我』,unicode 為 0x6211, UTF-8 編碼為 0xE6 0x88 0x91,URL 編碼就是 在 JavaScript 中,提供了 encodeURI 和 encodeURIComponent 兩種方法對(duì) URL 進(jìn)行編碼;Python 的 urllib 庫中提供了 quote 和 quote_plus 兩種方法。因?yàn)槭轻槍?duì)不同場(chǎng)景設(shè)計(jì),以上四種方法編碼的范圍均不相同,比如 quote 除了 -._/09AZaz ,都會(huì)進(jìn)行編碼。quote_plus 比 quote 『更進(jìn)』一些,它還會(huì)編碼 /urllib.quote 使用參考:20.5. urllib