1. 程式人生 > >urlencode瀏覽器地址編碼格式

urlencode瀏覽器地址編碼格式

row 這樣的 transform 都是 wid 地址 keyword ali 部分

urllib.urlencode()

urllib 和 urllib2 都是接受URL請求的相關模塊,但是提供了不同的功能。兩個最顯著的不同如下:
  • urllib 僅可以接受URL,不能創建 設置了headers 的Request 類實例;

  • 但是 urllib 提供 urlencode 方法用來GET查詢字符串的產生,而 urllib2 則沒有。(這是 urllib 和 urllib2 經常一起使用的主要原因)

  • 編碼工作使用urllib的urlencode()函數,幫我們將key:value這樣的鍵值對轉換成"key=value"這樣的字符串,解碼工作可以使用urllib的unquote()函數。(註意,不是urllib2.urlencode() )

# IPython2 中的測試結果
In [1]: import urllib

In [2]: word = {"wd" : "傳智播客"}

# 通過urllib.urlencode()方法,將字典鍵值對按URL編碼轉換,從而能被web服務器接受。
In [3]: urllib.urlencode(word)  
Out[3]: "wd=%E4%BC%A0%E6%99%BA%E6%92%AD%E5%AE%A2"

# 通過urllib.unquote()方法,把 URL編碼字符串,轉換回原先字符串。
In [4]: print urllib.unquote("wd=%E4%BC%A0%E6%99%BA%E6%92%AD%E5%AE%A2"
) wd=傳智播客
一般HTTP請求提交數據,需要編碼成 URL編碼格式,然後做為url的一部分,或者作為參數傳到Request對象中。

urlencode瀏覽器地址編碼格式