【发布时间】:2021-05-07 15:54:23
【问题描述】:
我有 url 地址,其扩展名需要在 ASCII/UTF-8
a='sAE3DSRAfv+HG='
我需要在上面转换成这样:
a='sAE3DSRAfv%2BHG%3D'
我搜索了,但找不到。
【问题讨论】:
我有 url 地址,其扩展名需要在 ASCII/UTF-8
a='sAE3DSRAfv+HG='
我需要在上面转换成这样:
a='sAE3DSRAfv%2BHG%3D'
我搜索了,但找不到。
【问题讨论】:
请看内置方法urllib.parse.quote()
URL 的一个非常重要的任务是它的安全传输。在您创建它之后,它的含义不得改变,直到它被预期的接收者接收。为实现这一目的,并入了 URL 编码。见RFC 2396
URL 可能包含非 ascii 字符,如 cafes、López 等。或者它可能包含在 URL 上下文中具有不同含义的符号。例如,# 表示书签。为确保安全传输此类字符,HTTP 标准维护您在源点引用 url。并且 URL 始终以引用格式提供给其他任何人。
我在下面放了示例用法。
>>> import urllib.parse
>>> a='sAE3DSRAfv+HG='
>>> urllib.parse.quote(a)
'sAE3DSRAfv%2BHG%3D'
>>>
【讨论】: