我看了一段别人写的代码,用etree解析xml文件中的xmin,xmax等参数。别人都能解析出参数,而我这里却报错。
def to_labels(path):
xml = open('{}'.format(path)).read()
sel = etree.HTML(xml)
width = int(sel.xpath('//size/width/test()')[0])
height = int(sel.xpath('//size/height/test()')[0])
xmin = int(sel.xpath('//bndbox//xmin/test()')[0])
ymin = int(sel.xpath('//bndbox//ymin/test()')[0])
xmax = int(sel.xpath('//bndbox//xmax/test()')[0])
ymax = int(sel.xpath('//bndbox//ymax/test()')[0])
return [xmin, ymin, xmax, ymax]
labels = [to_labels(path) for path in xmls]
解析过后报错:
**__XPathEvalError Traceback (most recent call last)
in ()
----> 1 labels = [to_labels(path) for path in xmls]
in (.0)
----> 1 labels = [to_labels(path) for path in xmls]
in to_labels(path)
2 xml = open('{}'.format(path)).read()
3 sel = etree.HTML(xml)
----> 4 width = int(sel.xpath('//size/width/test()')[0])
5 height = int(sel.xpath('//size/height/test()')[0])
6 xmin = int(sel.xpath('//bndbox//xmin/test()')[0])
src/lxml/etree.pyx in lxml.etree._Element.xpath()
src/lxml/xpath.pxi in lxml.etree.XPathElementEvaluator.__call__()
src/lxml/xpath.pxi in lxml.etree._XPathEvaluatorBase._handle_result()
XPathEvalError: Invalid expression**__
请问有大神知道是什么原因么
https://blog.csdn.net/mdjxy63/article/details/75578130?utm_source=blogxgwz2