将 url 字符串从“+”解析为“%2B”

时间:2021-02-03 12:00:53

标签: python url encode

我有 url 地址,其扩展名需要在 ASCII/UTF-8

a='sAE3DSRAfv+HG='

我需要像这样转换上面的:

a='sAE3DSRAfv%2BHG%3D'

我搜索过,但没有找到。

1 个答案:

答案 0 :(得分:1)

请参阅内置方法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'
>>> 

相关问题