--- OSAS/OSA_system/OSAS_helpers.py 2003/12/23 13:43:10 1.1
+++ OSAS/OSA_system/OSAS_helpers.py 2004/04/14 21:38:02 1.6
@@ -2,6 +2,34 @@
import xml.dom.minidom
import os.path
import re
+import urllib
+
+
+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):
@@ -20,7 +48,7 @@ def changeNodesInIndexMeta(path,node,sub
f=inFile.read()
inFile.close()
else:
- f=""""""
+ f=""""""
dom=xml.dom.minidom.parseString(f)
@@ -38,20 +66,29 @@ def changeNodesInIndexMeta(path,node,sub
# check if node already exist
- nodeOld=root.getElementsByTagName(node)
-
- if nodeOld: # if yes -> delete it
- root.removeChild(nodeOld[0]).unlink()
if node=="":
for subnode in subnodes.keys():
+ nodeOld=root.getElementsByTagName(subnode)
+
+ if nodeOld: # if yes -> delete it
+ 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)
else:
+ nodeOld=root.getElementsByTagName(node)
+
+ if nodeOld: # if yes -> delete it
+ root.removeChild(nodeOld[0]).unlink()
+
nodeNew=dom.createElement(node) # create new
if nodeAttributes:
@@ -62,7 +99,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)
@@ -72,7 +109,7 @@ def changeNodesInIndexMeta(path,node,sub
writefile=file(path+"/index.meta","w")
writefile.write(dom.toxml().encode('utf-8'))
writefile.close()
-
+ os.chmod(path+"/index.meta",0664)