PythonでURLエンコードする方法

GETでクエリを引きずり回す時などに使いますね。後は日本語名称のファイルをクライアントに出力するときでしょうか。2バイト文字の世界の人々には必須の知識ですよね。

import urllib

print urllib.quote_plus(u’ほげほげ’.encode(‘utf8’))
print urllib.unquote_plus(‘%82%D9%82%B0%82%D9%82%B0’)

上がエンコード、下がデコード。

ソースコード中に2バイト文字書くときは

u’ほげほげ’

といった感じでuをつけないといけなかったのですが、ここでは不要です。