String matchen
Verfasst: Donnerstag 14. Januar 2010, 12:28
hallo zusammen,
ich bin python-neuling
also ich hab eine xml-datei, die eingelesen wird und in die variable "data" gespeichert. für die xml-zeug benutze ich xml.dom import minidom für python. Ich muss die if-schleife so anpassen, dass die Bedingung (schwarz markiert) anders ist. und zwar dieser code ist für folgende XML gedacht:
<Item>
<Category>rest</Category>
<Qualifier>12</Qualifier>
<Value>Info: Inhalt</Value>
</Item>
ich brauche den string "Inhalt". das funktioniert mit dem code: er kopiert den wert des feldes <Value> und löscht "Info:", "Inhalt" wird behalten und ist der Teil der Bedingung. Nun muss ich das so anpassen, dass es für ein anderes XML funktioniert (der wert des Value-Feldes ist eben anders) und zwar:
<Value>Int: Resolving-System; Info: kostenfrei; Bezug: Voll // 2009 dig von: TT. </Value>
Aus diesem ganzen XML-Attribut will ich den String "Voll" matchen.
Hier ist die if-schleife
Wie mache ich das?
ich bin python-neuling

<Item>
<Category>rest</Category>
<Qualifier>12</Qualifier>
<Value>Info: Inhalt</Value>
</Item>
ich brauche den string "Inhalt". das funktioniert mit dem code: er kopiert den wert des feldes <Value> und löscht "Info:", "Inhalt" wird behalten und ist der Teil der Bedingung. Nun muss ich das so anpassen, dass es für ein anderes XML funktioniert (der wert des Value-Feldes ist eben anders) und zwar:
<Value>Int: Resolving-System; Info: kostenfrei; Bezug: Voll // 2009 dig von: TT. </Value>
Aus diesem ganzen XML-Attribut will ich den String "Voll" matchen.
Hier ist die if-schleife
Code: Alles auswählen
for itemnode in dom_data.getElementsByTagName("Item"):
if itemnode.getElementsByTagName("Category")[0].firstChild.data == "rest" and itemnode.getElementsByTagName("Qualifier")[0].firstChild.data == "12"+subcat:
adamobjtype = itemnode.getElementsByTagName("Value")[0].firstChild.data.lstrip("Info:").strip()
document.logger.Info("%s: Object type: %s" % (self._name, adamobjtype))