urlencode
是一种编码方式,用于将URL中的特殊字符转换为可传输的格式。在Python中,你可以使用 urllib.parse.quote
和 urllib.parse.unquote
函数进行 urlencode
和解码。
以下是如何使用 urllib.parse.quote
对特殊字符进行编码的示例:
from urllib.parse import quote
url = "https://www.example.com/search?q=你好,世界!"
encoded_url = quote(url, safe=':/?=')
print(encoded_url)
输出结果:
https%3A//www.example.com/search%3Fq%3D%E4%BD%A0%E5%A5%BD%EF%BC%8C%E4%B8%96%E7%95%8C%EF%BC%81
在这个例子中,我们使用 quote
函数对URL进行了编码。safe
参数用于指定哪些字符不需要被编码,这里我们设置为 ‘:/?=’,表示这些字符保持原样。
如果你想解码一个已编码的URL,可以使用 urllib.parse.unquote
函数:
from urllib.parse import unquote
encoded_url = "https%3A//www.example.com/search%3Fq%3D%E4%BD%A0%E5%A5%BD%EF%BC%8C%E4%B8%96%E7%95%8C%EF%BC%81"
decoded_url = unquote(encoded_url)
print(decoded_url)
输出结果:
https://www.example.com/search?q=你好,世界!
这样,你就可以使用 urlencode
处理特殊字符了。