我想用Python的ElementTree生成一个XHTML文件。如何用Python的ElementTree创建“虚拟根”?
然而,ElementTree.Element()只是让我创建一个标签(例如HTML)。 我需要创建某种虚拟根或其他名称,以便我可以放置各种DOCTYPES等。
我该怎么做? 感谢
我想用Python的ElementTree生成一个XHTML文件。如何用Python的ElementTree创建“虚拟根”?
然而,ElementTree.Element()只是让我创建一个标签(例如HTML)。 我需要创建某种虚拟根或其他名称,以便我可以放置各种DOCTYPES等。
我该怎么做? 感谢
我不知道是否有一个更好的办法,但我已经看到这种情况:
创建基础文档作为一个字符串:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html></html>
然后解析该字符串启动新文件。
我有/有同样的问题。当我解析一个文件并再次写回来时,文档类型defenition就不存在了。但我发现了一个解决方案浏览文档:
保存HTML文件#
要保存一个纯HTML文件,只写了出来。
tree.write("outfile.htm")
只要文件没有包含任何嵌入的SCRIPT或STYLE标签,就可以很好地工作。
如果你愿意,你可以添加一个DTD参考文件的开头:
file = open("outfile.htm", "w")
file.write(DTD + "\n")
tree.write(file)
file.close()
+1证实,ElementTree中不能添加/创建文档类型,所以这种解决方案(但可以解析吧!)尽可能干净。 – 2009-07-01 19:23:47