有什么方法可以检测何时必须对网址进行两次解码?

时间:2019-03-06 12:30:49

标签: python urldecode

我有以下网址:

https://www.example.com/%2522%25D0%25B7%25D0%25B5%25D0%25BB%25D0%25B5%25D0%25BD-%25D1%2581%25D0%25B2%25D1%258F%25D1%2582%2522

如果我取消引用URL,则会得到以下信息:

>>> urllib.parse.unquote(url)
'https://www.example.com/%22%D0%B7%D0%B5%D0%BB%D0%B5%D0%BD-%D1%81%D0%B2%D1%8F%D1%82%22'

哪个告诉我,我需要再次取消报价,就像这样:

>>> urllib.parse.unquote(url)
'https://www.example.com/%22%D0%B7%D0%B5%D0%BB%D0%B5%D0%BD-%D1%81%D0%B2%D1%8F%D1%82%22'

我注意到,对于大多数已被编码两次的URL,它们中都带有%25(引号)。这对于检测需要解码两次的URL是否有效,还是有更多字符?如果要对数十亿个URL执行此操作,而大多数URL只需一次解码就可以了,那么对每个URL进行两次解码是否有任何不利之处?

0 个答案:

没有答案