JSON中的HTML标记(在Python中)

Key*_*upt 2 python markup json escaping

我理解它不是一个理想的情况,但是如果我需要在JSON标签中使用某种HTML,例如:

{
    "node":
    {
        "list":"<ul><li class="lists">Hello World</li><ul>"
    }
}
Run Code Online (Sandbox Code Playgroud)

这可以在Python中做,而不需要事先进行转义吗?

它最初将是一个字符串,所以我在考虑编写一个正则表达式,以便在处理之前尝试匹配并转义它们,但我只是想确保没有更简单的方法.

Ben*_*oyt 6

那么,根据你的HTML的多样性,你可以在HTML中使用单引号,所以你可以这样做:

{
    "node":
    {
        "list": "<ul><li class='lists'>Hello World</li><ul>"
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,simplejson作为json模块,它内置于Python 2.6中,它可以自动执行任何转义:

>>> import simplejson
>>> simplejson.dumps({'node': {'list': '<ul><li class="lists">Hello World</li><ul>'}})
'{"node": {"list": "<ul><li class=\\"lists\\">Hello World</li><ul>"}}'
Run Code Online (Sandbox Code Playgroud)