Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

PythonでURLエンコード/デコード

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

実際のところ

マルチバイト文字列をURLエンコードするにはquote_plus

print(urllib.parse.quote('日本語'))
#>> %E6%97%A5%E6%9C%AC%E8%AA%9E

URLエンコードされた文字列をマルチバイト文字列にするにはunquote

print(urllib.parse.unquote('%E6%97%A5%E6%9C%AC%E8%AA%9E'))
#>> 日本語

バイト遊びをしたい時はunquote_to_bytes

up.unquote_to_bytes('%E6%97%A5%E6%9C%AC%E8%AA%9E')
#>> b'\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e'
up.unquote_to_bytes('日本語')
#>> b'\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e'