26 |
from random import randint |
from random import randint |
27 |
import sys |
import sys |
28 |
from time import ctime |
from time import ctime |
29 |
|
from xml.dom import minidom |
30 |
|
|
31 |
|
|
32 |
# --------------------------- |
# --------------------------- |
98 |
fichero_log.close() |
fichero_log.close() |
99 |
|
|
100 |
|
|
101 |
|
# ---------------------- |
102 |
|
# Funciones de ayuda XML |
103 |
|
# ---------------------- |
104 |
|
|
105 |
|
def extraer_contenido_xml(elem): |
106 |
|
"""Extrae todo el texto contenido dentro del elemento. |
107 |
|
Parametros: |
108 |
|
- elem(xml.dom.minidom.Node): una instancia de elemento XML |
109 |
|
Requiere: |
110 |
|
elem != None |
111 |
|
Asegura: |
112 |
|
return != None |
113 |
|
""" |
114 |
|
contenido = "" |
115 |
|
for sub_elem in elem.childNodes: |
116 |
|
if sub_elem.nodeType == minidom.Node.TEXT_NODE: |
117 |
|
contenido = contenido + sub_elem.data.encode('ISO-8859-1') |
118 |
|
return contenido |
119 |
|
|
120 |
|
|
121 |
|
def extraer_atributo_xml(elem, nombre_atributo): |
122 |
|
"""Extrae el valor de un atributo del elemento. |
123 |
|
Si el elemento no contiene el atributo, produce una excepcion KeyError. |
124 |
|
Parametros: |
125 |
|
- elem(xml.dom.minidom.Node): una instancia de elemento XML |
126 |
|
- nombre_atributo(string): el nombre del atributo a extraer |
127 |
|
Requiere: |
128 |
|
elem != None |
129 |
|
nombre_atributo != None |
130 |
|
Asegura: |
131 |
|
return != None |
132 |
|
""" |
133 |
|
return elem.attributes[nombre_atributo].value.encode('ISO-8859-1') |
134 |
|
|
135 |
|
|
136 |
# --------------- |
# --------------- |
137 |
# Miscelánea pura |
# Miscelánea pura |
138 |
# --------------- |
# --------------- |