Webbrowser 将双引号转换为 %2522

Webbrowser converts double quotes to %2522

正如标题中所解释的,无论我做什么,我都无法让网络浏览器打开 URL 我想要它打开。

我尝试用 \

转义双引号

我尝试在 URL 中使用 %22 而不是 "

无论如何,结尾URL最终有效地将"变成了%2522

我知道 %25 代表 %,这意味着,不知何故," 先变成 %22,然后里面的 % 变成 %25。没有意义,我不知道为什么会这样无论如何都要处理两次。

示例URL(在python中打印变量时得到的结果):

https://domain.com/do?q=item:(("abc")+OR+("def")+OR+("ghj"))

在 Chrome 中打开的网络浏览器:

https://domain.com/do?q=item:((%2522abc%2522)+OR+(%2522def%2522)+OR+(%2522ghj%2522))

您的代码 URL 编码了两次。 %2522" 的双重编码,因为 % 的编码是 %25.

> decodeURIComponent('%2522')
"%22"
> decodeURIComponent('%22')
"\""