PythonでのShiftJISのURLデコード
今、GAEでzuzu鯖のIMEの代わりを作っているのだが、URLデコードで詰まった。
ShiftJISでのURLデコードの方法がどこにも載ってないのだ。
文字コード関連の文献をあさって、成功した方法が以下の通り
url = "http%3a%2f%2fd%2ehatena%2ene%2ejp%2fzuzu_sion%2f" url = urllib.unquote_plus(url.decode('utf-8'))
なにをやっているかというと、一度ShiftJISをUTF-8にデコードする。
それが、この部分、
url.decode('utf-8')
そうするとShiftJISでのURLエンコード文字列がUTF-8でのURLエンコード文字列になる。
そして、それをurllibライブラリのunquote_plusによってURLデコードすれば、できあがりというわけだ。
まとめ
- ShiftJISをUTF-8にデコード
- urllib.unquote_plusによってURLデコード
- 完成