我在python 2.7中有这段代码
from lxml import etree
def file_dialog(self):
global root1
fd = QtGui.QFileDialog(self)
self.f1 = fd.getOpenFileName()
tree1 = etree.parse(self.f1)
当我执行此操作时,我收到此错误 tree1 = etree.parse(self.f1) 文件" lxml.etree.pyx",第3310行,在lxml.etree.parse中(src \ lxml \ lxml.etree.c:72517) 文件" parser.pxi",第1814行,在lxml.etree._parseDocument中(src \ lxml \ lxml.etree.c:106226) TypeError:无法从' QString'
解析这只发生在python 2.7上,相同的代码适用于python 3.4
答案 0 :(得分:0)
我找到了这样的解决方案:
from lxml import etree
from StringIO import StringIO
self.f1 = fd.getOpenFileName()
f=open(self.f1)
xml=f.read()
f.close()
tree1 = etree.parse(StringIO(xml))