title: XML tag text to string ignoring children tags but including their text
body: <p>I'm parsing XML data that looks like this:</p>
  
  <pre><code>&lt;title-group&gt;&lt;article-title&gt;Leucine to proline substitution by SNP at position 197 in Caspase-9 gene expression leads to neuroblastoma: a bioinformatics analysis&lt;/article-title&gt;&lt;/title-group&gt;
  </code></pre>
  
  <p>sometimes though there are italic tags within:</p>
  
  <pre><code>&lt;title-group&gt;&lt;article-title&gt;&lt;italic&gt;Interferon regulatory factor 5&lt;/italic&gt; genetic variants are associated with cardiovascular disease in patients with rheumatoid arthritis&lt;/article-title&gt;&lt;/title-group&gt;
  </code></pre>
  
  <p>The following python code returns a correctly concatenated title string, but only if the italic tag is not at the start of the title (as in the code above):</p>
  
  <pre><code>    #Get titles
      for node in tree.iter('title-group'):
          for subnode in node.iter('article-title'):
              try:
                  title = remove_control_characters(subnode.text)
                  if len(title) == 0:
                      for subsubnode in node.iter('italic'):
                          italic = subsubnode.text 
                          tail = remove_control_characters(subsubnode.tail)
                          title += italic + tail  
                          title = str(title)  
                          break                       
              except:
                  continue
              for subsubnode in node.iter('italic'):
                  italic = subsubnode.text 
                  tail = remove_control_characters(subsubnode.tail)
                  title += italic + tail  
                  title = str(title)  
  </code></pre>
  
  <p>when the italic tag is at the start of the string, nothing is returned.</p>
  
  <p>Is there a simpler method (not including lxml) to use? Or if you can recommend a change to the Python code, that would be appreciated too. Suggestions welcome and have a nice day.</p>
  
  <p><strong>EDIT</strong> <strong>[Solved]</strong></p>
  
  <pre><code>#Get titles
      for node in tree.iter('title-group'):
          for subnode in node.iter('article-title'):
              whole = subnode.itertext()
              for parts in whole:
                  title += parts
      print(remove_control_characters(title))
  </code></pre>