title: ElementTree - findall to recursively select all child elements
body: <p>Python code:</p>
  
  <pre><code>import xml.etree.ElementTree as ET
  root = ET.parse("h.xml")
  print root.findall('saybye')
  </code></pre>
  
  <p>h.xml code:</p>
  
  <pre><code>&lt;hello&gt;
    &lt;saybye&gt;
     &lt;saybye&gt;
     &lt;/saybye&gt;
    &lt;/saybye&gt;
    &lt;saybye&gt;
    &lt;/saybye&gt;
  &lt;/hello&gt;
  </code></pre>
  
  <p>Code outputs,</p>
  
  <pre><code>[&lt;Element 'saybye' at 0x7fdbcbbec690&gt;, &lt;Element 'saybye' at 0x7fdbcbbec790&gt;]
  </code></pre>
  
  <p><code>saybye</code> which is a child of another <code>saybye</code> is not selected here. So, how to instruct findall to recursively walk down the DOM tree and collect all three <code>saybye</code> elements? </p>