首页  >  文章  >  后端开发  >  如何在 Python 2.7 中解码 UTF-8 URL 编码字符串?

如何在 Python 2.7 中解码 UTF-8 URL 编码字符串?

Barbara Streisand
Barbara Streisand原创
2024-11-04 07:33:02839浏览

How to Decode UTF-8 URL Encoded Strings in Python 2.7?

在 Python 中解码 UTF-8

问题:给定一个以 UTF-8 格式编码的 URL,如何它可以在 Python 2.7 中解码为预期的字符串表示形式吗?

解决方案:

问题源于使用 URL 转义的 UTF-8 编码字节的存在引用。要正确解码此数据,需要一个两步过程:

  1. URL 解码: 在 Python 3 中使用 urllib.parse.unquote() 或在 Python 3 中使用 urllib.unquote() Python 2 将 URL 编码的字节转换回其原始表示形式。
  2. UTF-8 解码: 对于 Python 2,解码后的字节串需要使用decode 显式转换为文本字符串('utf8').
<code class="python">from urllib.parse import unquote

url = 'example.com?title=%D0%BF%D1%80%D0%B0%D0%B2%D0%BE%D0%B2%D0%B0%D1%8F+%D0%B7%D0%B0%D1%89%D0%B8%D1%82%D0%B0'
decoded_url = unquote(url)

print(decoded_url)  # Output: example.com?title=правовая+защита</code>

这种方法可以无缝处理从百分比编码数据到 UTF-8 字节并最终到文本的解码。

以上是如何在 Python 2.7 中解码 UTF-8 URL 编码字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn