我正在使用SQLite访问数据库并检索所需的信息。我在Python 2.6版中使用ElementTree来创建包含该信息的XML文件。
以下是我用于从数据库模式创建XML文件的代码。我用评论表示了错误发生的位置。
import sqlite3
import xml.etree.ElementTree as ET
db = sqlite3.connect("dataload.db")
root = ET.Element("databaseConfiguration")
software_attributes = ["id", "functionalDesignationHardware", "hwfin", "identname", "partnumber",
"repfin", "targetHardwareID"]
software = db.cursor().execute("SELECT %s from SOFTWARE_" % ", ".join([i + "_" for i in software_attributes]))
software_Data = software.fetchall()
for sw in software_Data:
sw_node = ET.SubElement(root, "Software")
for i in range(1, len(software_attributes)):
sw_node.set(software_attributes[i], str(sw[i]))
target_attributes = ["id", "functionalDesignationSoftware", "installscriptpathname", "ata", "status",
"swfin", "targetOSFC", "timestamp"]
tree = ET.ElementTree(root)
from xml.dom import minidom
print minidom.parseString(ET.tostring(root)).toprettyxml(indent = " ")
## The error pops up at this line (when trying to generate the XML) ##
tree.write("New_Database.xml)
如何修复此错误?我已经看到了其他一些必须添加或编辑引号的问题 - 我是否需要做类似的事情,以及如何做?
答案 0 :(得分:1)
我之前没有注意到你在标题中输入了错误信息(EOL,同时扫描字符串文字)。所以,我认为你帖子中的拼写错误就是错误。将结束引号添加到字符串中。