読者です 読者をやめる 読者になる 読者になる

zuzuの開発日記

iMona@zuzu等の開発者であるzuzuの趣味や業務で学んだ事などを書き連ねるブログ

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デコードすれば、できあがりというわけだ。

まとめ

  1. ShiftJISをUTF-8にデコード
  2. urllib.unquote_plusによってURLデコード
  3. 完成
広告を非表示にする