version 1.9, 2004/05/10 15:27:32
|
version 1.24, 2004/10/28 13:38:40
|
Line 1
|
Line 1
|
displayTypes = ['ZSQLExtendFolder','ZSQLBibliography','ECHO_group','ECHO_collection','ECHO_resource','ECHO_link','ECHO_sqlElement'] |
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) |
|
ret=urllib.urlopen(url) |
|
socket.setdefaulttimeout(5) |
|
return ret |
|
# urlopener = urllib.URLopener() |
|
# |
|
# try: |
|
# con = urlopener.open(url) |
|
# return con |
|
# except timeoutsocket.Timeout: |
|
# return None |
|
|
|
|
|
displayTypes = ['ZSQLExtendFolder','ZSQLBibliography','ECHO_group','ECHO_collection','ECHO_resource','ECHO_link','ECHO_sqlElement','ECHO_pageTemplate','ImageCollectionIFrame','VLP_resource','VLP_essay','ECHO_ZCatalogElement'] |
|
|
|
|
def checkOnlyOneInGroup(object): |
def checkOnlyOneInGroup(object): |
"""check if object is a group and if it containt only one element it return this element""" |
"""check if object is a group and if it containt only one element it return this element""" |