comparison addDriToIndexMeta.py @ 7:78dd28ade713

error handling
author dwinter
date Fri, 02 Nov 2012 09:25:11 +0100
parents f0417a01690a
children 733d43b30a82
comparison
equal deleted inserted replaced
6:f0417a01690a 7:78dd28ade713
9 from lxml import etree 9 from lxml import etree
10 10
11 from os.path import join, getsize 11 from os.path import join, getsize
12 12
13 errorFile = file("/tmp/addDRIErrors.txt","w") 13 errorFile = file("/tmp/addDRIErrors.txt","w")
14 parseErrorFile = file("/tmp/addDRIParseErrors.txt","w")
14 15
15 def addPURL(fl,purl,test=False): 16 def addPURL(fl,purl,test=False):
16 tree = etree.parse(fl) 17 try:
17 18 tree = etree.parse(fl)
19 except:
20 parseErrorFile.write("PARSE ERROR:"+fl+"\n")
21 return False
18 dris = tree.xpath("/resource/meta/dri[@type='mpiwg']") 22 dris = tree.xpath("/resource/meta/dri[@type='mpiwg']")
19 23
20 if len(dris)==0: # erzeuge neu 24 if len(dris)==0: # erzeuge neu
21 newDri = etree.Element("dri",type="mpiwg") 25 newDri = etree.Element("dri",type="mpiwg")
22 newDri.text=purl 26 newDri.text=purl
23 metas=tree.xpath("/resource/meta") 27 metas=tree.xpath("/resource/meta")
24 if len(metas)==0: 28 if len(metas)==0:
25 print "no resource/meta in %s"%fl 29 parseErrorFile.write("no resource/meta: %s \n"%fl)
26 return False 30 return False
27 else: 31 else:
28 metas[0].append(newDri) 32 metas[0].append(newDri)
29 else: 33 else:
30 dris[0].text=purl 34 dris[0].text=purl
64 dirs.remove('pageimg') 68 dirs.remove('pageimg')
65 if dir.startswith("."): 69 if dir.startswith("."):
66 dirs.remove(dir) 70 dirs.remove(dir)
67 71
68 if __name__ == '__main__': 72 if __name__ == '__main__':
69 addDriToIndexMeta("/mpiwg/online/permanent/annalen",delpath="/mpiwg/online") 73 addDriToIndexMeta("/mpiwg/online/",delpath="/mpiwg/online",test=False)