title: Python parse XML with unusual tag name (atom:link)
body: <p>I'm trying to parse out <code>href</code> from the below XML.  There are multiple <code>workspace</code> tags, below I just show one.</p>
  
  <pre><code>&lt;workspaces&gt;
    &lt;workspace&gt;
      &lt;name&gt;practice&lt;/name&gt;
      &lt;atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate" href="https://www.my-geoserver.com/geoserver/rest/workspaces/practice.xml" type="application/xml"/&gt;
    &lt;/workspace&gt;
  &lt;/workspaces&gt;
  </code></pre>
  
  <p>The above comes from a <code>requests.get</code> command using the requests library:</p>
  
  <pre><code>myUrl = 'https://www.my-geoserver.com/geoserver/rest/workspaces'
  headers = {'Accept': 'text/xml'}
  resp = requests.get(myUrl,auth=('admin','password'),headers=headers)
  </code></pre>
  
  <p>If I search for 'workspace' I get objects returned:</p>
  
  <pre><code>lst = tree.findall('workspace')
  print(lst)
  </code></pre>
  
  <p>Which results in:</p>
  
  <pre><code>[&lt;Element 'workspace' at 0x039E70F0&gt;, &lt;Element 'workspace' at 0x039E71B0&gt;, &lt;Element 'workspace' at 0x039E7240&gt;]
  </code></pre>
  
  <p>Ok fine, but how do I get the text href out of the string, I have tried:</p>
  
  <pre><code>lst = tree.findall('atom')
  lst = tree.findall('atom:link')
  lst = tree.findall('workspace/atom:link')
  </code></pre>
  
  <p>But none of them work to isolate the tag, in fact the last one creates an error</p>
  
  <blockquote>
    <p>SyntaxError: prefix 'atom' not found in prefix map</p>
  </blockquote>
  
  <p>How can I get all instances of href with these tag names?</p>