Annotation of cdli/splitaxtf.py, revision 1.1
1.1 ! dwinter 1: """split atf file, get an xtf file"""
! 2:
! 3: import sys
! 4: from xml.dom.pulldom import parse
! 5:
! 6: def splitxtf(filename):
! 7: doc=parse(filename)
! 8: while 1:
! 9: node=doc.getEvent()
! 10:
! 11: if node is None:
! 12: break;
! 13: else:
! 14: if node[1].nodeName=='transliteration':
! 15: doc.expandNode(node[1])
! 16: fn=node[1].getAttribute("xml:id")
! 17: nf=file("xtf/"+fn+".xtf",'w')
! 18: nf.write("""<texts xmlns="http://emegir.info/xtf" xmlns:lem="http://emegir.info/lemma" >"""+node[1].toxml()+"</texts>")
! 19: print "wrote: %s"%fn
! 20:
! 21: def splitatf(filename):
! 22: """split it"""
! 23: try:
! 24: fh=open(filename,"r")
! 25: except:
! 26: print """Can't open file: %s (%s %s)"""%(filename,sys.exc_info()[0],sys.exc_info()[0])
! 27:
! 28: nf=None
! 29: for line in fh.readlines():
! 30: print line
! 31: if (len(line.lstrip())>0) and (line.lstrip()[0]=="&"): #newfile
! 32: if nf:
! 33: nf.close() #close last file
! 34:
! 35:
! 36: filename=line[1:].split("=")[0].rstrip()+".atf"
! 37: nf=file(filename,"w")
! 38:
! 39: nf.write(line)
! 40:
! 41: nf.close()
! 42: fh.close()
! 43:
! 44:
! 45: splitxtf(sys.argv[1])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>