Ombongi, > however, if i pass xml data that DOES NOT contain sepid element, i get an > error: > > Traceback (most recent call last): > File "/usr/local/bin/receive.py", line 21, in <module> > sepid = > content.find(".//{http://www.huawei.com.cn/schema/common/v2_1}sepid").text > AttributeError: 'NoneType' object has no attribute 'text' > > > some messages i receive will have the sepid parameter, other will not have > this parameter. How can i cater for this? kinda like an if .. else > implementation for xml.etree.ElementTree ?
What about simply testing whether the value returned by find is None? For example: $ cat test.py from xml.etree import ElementTree myTree = ElementTree.fromstring('<test />') myElement = myTree.find('orange') if myElement is None: print 'tree does not contain a child element "orange"' else: print myElement.text $ python test.py tree does not contain a child element "orange" HTH, Stefan -- http://mail.python.org/mailman/listinfo/python-list