MarkupSafe:Python的字符转义库

发布时间 2023-09-20 19:21:17作者: 阿瑞娜

MarkupSafe转义字符,因此在HTML和XML中使用文本是安全的。具有特殊含义的字符将被替换,使其显示为实际字符。这减轻了注入攻击,意味着不受信任的用户输入可以安全地显示在页面上。

escape()函数转义文本并返回一个Markup对象。该对象将不再被转义,但与它一起使用的任何文本都将被转义,以确保在HTML中使用结果仍然是安全的。

>>> from markupsafe import Markup, escape

>>> # escape replaces special characters and wraps in Markup
>>> escape("<script>alert(document.cookie);</script>")
Markup('&lt;script&gt;alert(document.cookie);&lt;/script&gt;')

>>> # wrap in Markup to mark text "safe" and prevent escaping
>>> Markup("<strong>Hello</strong>")
Markup('<strong>hello</strong>')

>>> escape(Markup("<strong>Hello</strong>"))
Markup('<strong>hello</strong>')

>>> # Markup is a str subclass
>>> # methods and operators escape their arguments
>>> template = Markup("Hello <em>{name}</em>")
>>> template.format(name='"World"')
Markup('Hello <em>&#34;World&#34;</em>')

使用pip安装和更新:

pip install -U MarkupSafe

文档地址:https://markupsafe.palletsprojects.com