--- ECHO_content/ECHO_helpers.py 2004/10/19 18:44:26 1.20 +++ ECHO_content/ECHO_helpers.py 2004/10/28 13:38:40 1.24 @@ -1,6 +1,49 @@ import socket import urllib +import xml.dom.minidom +from types import * + +def toList(field): + """Einzelfeld in Liste umwandeln""" + if type(field)==StringType: + return [field] + else: + return field + +def getText(nodelist): + + rc = "" + for node in nodelist: + if node.nodeType == node.TEXT_NODE: + rc = rc + node.data + return rc + + +def readFieldFromXML(meta_url,parent,field): + """lesespezifisches metadatum""" + try: + dom=xml.dom.minidom.parse(meta_url) + + except: + try: + fh=urllib.urlopen(meta_url) + dom=xml.dom.minidom.parse(fh) + except: + return None + if not dom: return None + + parent=dom.getElementsByTagName(parent) + if not parent: return None + + field=parent[0].getElementsByTagName(field) + + if not field: return None + + return getText(field[0].childNodes) + + + def urlopen(url): """urlopen mit timeout""" socket.setdefaulttimeout(2)