【发布时间】:2010-06-06 13:19:19
【问题描述】:
我正在尝试使用 lxml 解析 xml 文件。 xml.etree 允许我简单地将文件名作为参数传递给parse 函数,所以我尝试对 lxml 做同样的事情。
我的代码:
from lxml import etree
from lxml import objectify
file = "C:\Projects\python\cb.xml"
tree = etree.parse(file)
但我得到了错误:
Traceback (most recent call last):
File "cb.py", line 5, in <module>
tree = etree.parse(file)
File "lxml.etree.pyx", line 2698, in lxml.etree.parse (src/lxml/lxml.etree.c:4
9590)
File "parser.pxi", line 1491, in lxml.etree._parseDocument (src/lxml/lxml.etre
e.c:71205)
File "parser.pxi", line 1520, in lxml.etree._parseDocumentFromURL (src/lxml/lx
ml.etree.c:71488)
File "parser.pxi", line 1420, in lxml.etree._parseDocFromFile (src/lxml/lxml.e
tree.c:70583)
File "parser.pxi", line 975, in lxml.etree._BaseParser._parseDocFromFile (src/
lxml/lxml.etree.c:67736)
File "parser.pxi", line 539, in lxml.etree._ParserContext._handleParseResultDo
c (src/lxml/lxml.etree.c:63820)
File "parser.pxi", line 625, in lxml.etree._handleParseResult (src/lxml/lxml.e
tree.c:64741)
File "parser.pxi", line 565, in lxml.etree._raiseParseError (src/lxml/lxml.etr
ee.c:64084)
lxml.etree.XMLSyntaxError: AttValue: " or ' expected, line 2, column 26
我做错了什么?
【问题讨论】:
-
正如在接受的答案中所说,
lxml这里没有问题,所以对这个问题投反对票。也许重命名问题的标题可以避免在这个模块上错误地搜索问题。 -
@Joel - 我的问题标题并不暗示
lxml有什么问题 - 只是我将文件传递给 lxml 进行解析的方式可能有问题。如果您可以建议一个替代标题,那么我很乐意提供(从您的评论中不清楚您认为我应该将其更改为什么)。 -
哼。奇怪,我现在看不出标题有什么问题:/所以也许我错过了正确的问题,并错误地勾选了你的问题!而且,如果您不编辑问题,我无法删除反对票。如果您稍作修改以解锁它,我很乐意纠正我的错误。