zamiast robic zagniezdzone ify latwiej jest zplaszczac strutkure:

if root.tag != 'success':
raise NokautException(root.message)

if root.total <= 0:
raise NokautException('no items')

i tu juz wlasciwy kod