转义字符串以在 XML 中使用

新手上路,请多包涵

我正在使用 Python 的 xml.dom.minidom 创建一个 XML 文档。 (逻辑结构 -> XML 字符串,而不是相反。)

我如何让它转义我提供的字符串,这样它们就不会弄乱 XML?

原文由 Ram Rachum 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 459
2 个回答

你的意思是你做这样的事情:

 from xml.dom.minidom import Text, Element

t = Text()
e = Element('p')

t.data = '<bar><a/><baz spam="eggs"> & blabla &entity;</>'
e.appendChild(t)

然后你会得到很好转义的 XML 字符串:

 >>> e.toxml()
'<p>&lt;bar&gt;&lt;a/&gt;&lt;baz spam=&quot;eggs&quot;&gt; &amp; blabla &amp;entity;&lt;/&gt;</p>'

原文由 Andrey Vlasovskikh 发布,翻译遵循 CC BY-SA 2.5 许可协议

是这样的吗?

 >>> from xml.sax.saxutils import escape
>>> escape("< & >")
'&lt; &amp; &gt;'

原文由 mbarkhau 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题