--- OSAS/OSA_system/OSAS_helpers.py 2004/01/06 14:39:49 1.2 +++ OSAS/OSA_system/OSAS_helpers.py 2004/03/25 09:57:47 1.5 @@ -2,6 +2,48 @@ import xml.dom.minidom import os.path import re +import urllib + +def getISO(): # very bad made has to be configured + """ISO""" + try: + f=file('/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/iso639-1.inc','r').readlines() + #f=file('OSA_system/iso639-1.inc','r').readlines() + ret={} + for lineraw in f: + line=lineraw.encode('ascii','replace') + value=string.split(line,'\t')[0].encode('ascii','replace') + key=string.split(line,'\t')[1].encode('ascii','replace') + ret[key]=value + except: + ret={} + return ret + +def readArchimedesXML(folder): + """gib URL aus """ + try: + XML=urllib.urlopen("http://archimedes.mpiwg-berlin.mpg.de/cgi-bin/toc/toc.cgi?step=xmlcorpusmanifest").read() + #print XML + dom=xml.dom.minidom.parseString(XML) + items=dom.getElementsByTagName('item') + dict={} + + for item in items: + #print item.attributes['dir'].value + try: + dict[item.attributes['dir'].value]=item.attributes['xml'].value + #print item.attributes['dir'].value,item.attributes['text'].value + except: + """nothing""" + + if dict.has_key(folder): + return dict[folder] + else: + return "" + except: + return "" + + def getText(nodelist): @@ -43,13 +85,15 @@ def changeNodesInIndexMeta(path,node,sub for subnode in subnodes.keys(): nodeOld=root.getElementsByTagName(subnode) - + if nodeOld: # if yes -> delete it - root.removeChild(nodeOld[0]).unlink() - + try: + root.removeChild(nodeOld[0]).unlink() + except: + """nothing""" namenode=dom.createElement(re.sub(r' ','-',subnode)) - namenodetext=dom.createTextNode(subnodes[subnode].decode("utf8")) + namenodetext=dom.createTextNode(unicode(subnodes[subnode],"utf8")) namenode.appendChild(namenodetext) root.appendChild(namenode) @@ -69,7 +113,7 @@ def changeNodesInIndexMeta(path,node,sub for subnode in subnodes.keys(): namenode=dom.createElement(re.sub(r' ','-',subnode)) - namenodetext=dom.createTextNode(subnodes[subnode].decode("utf8")) + namenodetext=dom.createTextNode(unicode(subnodes[subnode],"utf8")) namenode.appendChild(namenodetext) nodeNew.appendChild(namenode)