|
From: Mitchell G. <mrg...@us...> - 2006-02-13 16:21:09
|
Update of /cvsroot/acd/acd-2/bin In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17905/bin Added Files: convert.py Log Message: Initial start of the python conversion code. --- NEW FILE: convert.py --- #!/usr/bin/python import sys, string from xml.sax import saxutils, make_parser, handler SQL = []; NotValid = [ "system", "required", "optional", "custom" ]; class FancyCounter(handler.ContentHandler): def __init__(self): self._SQLStr = ""; self._values = ""; self._current_head = ""; self._current_column = ""; def startElement(self, name, attrs): if name not in NotValid: if self._current_head == "": self._current_head = name self._SQLStr = "INSERT INTO " self._SQLStr += name self._SQLStr += " (" elif self._current_column == "": self._current_column = name self._SQLStr += str(name) else: self._SQLStr += ", " self._SQLStr += name def endElement(self, name): if name == self._current_head: self._SQLStr += ") VALUES ( " self._SQLStr += self._values[0:-2] self._SQLStr += " );" self._current_head = "" self._current_column = "" self._values = "" SQL.append( self._SQLStr ); def characters(self, content): if content.strip() != '': self._values += "'" + content.strip() + "'" self._values += ", " def endDocument(self): print "End of Transmission" parser = make_parser() parser.setContentHandler(FancyCounter()) parser.parse(sys.argv[1]) for item in SQL: print item ,"\n" |