如下表http://www.javascripter.net/faq/accentedcharacters.htm所示,escape()
和encodeURI()
之间存在差异。
我需要模仿escape()
的行为,因为它是另一个系统所需要的,但事实证明Python很复杂。
msg = "¿El mañana exitirá?"
# javascript: console.log(escape(msg)) # %BFEl%20ma%F1ana%20exitir%E1%3F
q = urllib.parse.quote(msg)
print(q) # %C2%BFEl%20ma%C3%B1ana%20exitir%C3%A1%3F
q = urllib.parse.quote(msg, encoding="unicode_escape")
print(q) # %5CxbfEl%20ma%5Cxf1ana%20exitir%5Cxe1%3F
如何让Python模仿escape
?
答案 0 :(得分:2)
事实证明,我非常接近:
msg = "¿El mañana exitirá?"
q = urllib.parse.quote(msg, encoding="raw_unicode_escape")
print(q) # %BFEl%20ma%F1ana%20exitir%E1%3F