[英]Unescape/unquote binary strings in (extended) url encoding in python
[英]Python unescape URL
我有一個這種形式的網址 - http:\\\\/\\\\/en.wikipedia.org\\\\/wiki\\\\/The_Truman_Show
。 我怎樣才能使它成為正常的網址。 我嘗試過使用urllib.unquote
但沒有取得多大成功。
我總是可以使用正則表達式或一些簡單的字符串替換。 但我相信有更好的方法可以解決這個問題......
urllib.unquote
用於將URL中的%xx
轉義碼替換為它們所代表的字符。 它對此沒有用。
你的“簡單字符串替換東西”可能是最好的解決方案。
您是否嘗試過使用json模塊中的json.loads
?
>>> json.loads('"http:\\/\\/en.wikipedia.org\\/wiki\\/The_Truman_Show"')
'http://en.wikipedia.org/wiki/The_Truman_Show'
我正在展示的輸入並不完全是你所擁有的。 我把它用雙引號括起來使它成為有效的json。
當你第一次從json獲得它時,你是如何解碼它的? 這可能就是問題所在。
它太幼稚了 - 當你可以自己轉換URL時,尋找一些庫函數。 由於沒有其他可見規則,但“/”替換為“\\ /”,您只需將其替換回來:
def unescape_this(url):
return url.replace(r"\\/", "/")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.