【发布时间】:2013-10-01 18:33:18
【问题描述】:
我有一个带有 javascript 的 XSLT,它使用“<”和“>”在for循环内
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head> </head>
<body>
<script language="javascript" type="text/javascript">
function example() {
var trs = document.getElementsByTagName("tr");
for (var i = 0; i < trs.length; i++) {
}
}
</script>
</body>
</html>
我正在使用 PYTHON LXML 库通过 XSLT 和 XML 生成 HTML。
import lxml.etree as ET
xml = ET.parse('sample.xml')
xslt = ET.parse('sample.xsl')
transform = ET.XSLT(xslt)
content = transform(xml)
f = open('output.html','w')
f.write(ET.tostring(content , pretty_print=True))
f.close()
但 LXML 无法替换输出 HTML 文件中的特殊字符
'
是否有任何使用 LXML 替换“< ;”的标准做法到'
为了解决这个问题,我必须在写入文件之前编写另一段代码。
content = content.replace(">", ">")
content = content.replace("<", "<")
【问题讨论】:
标签: javascript python xml xml-parsing lxml