2016-04-26 13 views
0

Ich habe diesen Code in Python 2,7kann nicht von 'QString' analysieren

from lxml import etree 
def file_dialog(self): 
    global root1 
    fd = QtGui.QFileDialog(self) 
    self.f1 = fd.getOpenFileName() 
    tree1 = etree.parse(self.f1) 

wenn ich dies ausführen ich diesen Fehler tree1 = etree.parse (self.f1) File „lxml.etree.pyx “, line 3310, in lxml.etree.parse (src \ lxml \ lxml.etree.c: 72517) File "parser.pxi", Zeile 1814 in lxml.etree._parseDocument (src \ lxml \ lxml.etree. c: 106226) Typeerror: kann nicht von 'QString' analysieren

dies nur mit python 2.7 der gleiche Code mit python 3.4

arbeitet geschieht

Antwort

0

fand ich die Lösung wie folgt aus:

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)) 
+0

Sie vonString verwenden können –