0

我有一个网站是这样的:

http://abc.com/hsdl-3201%23008-lite-on-12275800/hsdl-3201%23008-lite-on-12275800

显然,因为有些奇怪的字符不适合 URL 格式,并且它们已被编码为 %20 之类的字符。我想知道如何轻松将其解码回包含原始字符的 python 字符串。

谢谢。

4

2 回答 2

3

蟒蛇 3

from urllib.parse import unquote

蟒蛇2

from urllib import unquote

然后

unquote('http://abc.com/hsdl-3201%23008-lite-on-12275800/hsdl-3201%23008-lite-on-12275800')
#>>> 'http://abc.com/hsdl-3201#008-lite-on-12275800/hsdl-3201#008-lite-on-12275800'

还要检查unquote_plus您是否正在为解析表单执行此操作,其中空格被编码"+"并因此需要被解码。

于 2013-09-27T21:45:45.110 回答
2

使用urllib.unquote

从文档:

urllib.unquote(string) 将 %xx 转义符替换为等效的单字符。

示例:unquote('/%7Econnolly/')产量'/~connolly/'

于 2013-09-27T21:42:23.343 回答