code: def _parseXml(self,cc):
          
          htmlpar = HTMLParser.HTMLParser()
          cc = cc.split("</text>") # ['<text start="2997.929">So, it will\nhas time', '<text start="3000.929">blah', ..]
          captions = []
          for line in cc:
              if re.search('text', line):
                  time = re.search(r'start="(\d+)(?:\.(\d+)){0,1}', line).groups() # ('2997','929')
                  time = ( int(time[0]), int(0 if not time[1] else time[1]) )
                      #convert seconds and millisec to int
                  text = re.search(r'">(.*)', line, re.DOTALL).group(1) # extract text i.e. 'So, it will\nhas time'
                  textlines = [ htmlpar.unescape(htmlpar.unescape( unicode(lineunparsed,"utf-8") )) for lineunparsed in text.split('\n') ] 
                      #unscape chars like &amp; or &#39;
                  ntime = {'hours':time[0]/3600,"min":time[0]%3600/60,"sec":time[0]%3600%60,"msec":time[1]}
                  captions.append({'time':ntime,'textlines':textlines})
          return captions
docs: INPUT: XML file with captions
              OUTPUT: parsed object like:
                  [{'texlines': [u"So, I'm going to rewrite this", 'in a more concise form as'],
                  'time': {'hours':'1', 'min':'2','sec':44,'msec':232} }]