code: def _extract_response_xml(self, domain, response):
          
          attributes = {}
          alexa_keys = {'POPULARITY': 'TEXT', 'REACH': 'RANK', 'RANK': 'DELTA'}
          try:
              xml_root = ET.fromstring(response._content)
              for xml_child in xml_root.findall('SD//'):
                  if xml_child.tag in alexa_keys and \
                          alexa_keys[xml_child.tag] in xml_child.attrib:
                      attributes[xml_child.tag.lower(
                      )] = xml_child.attrib[alexa_keys[xml_child.tag]]
          except ParseError:
              # Skip ill-formatted XML and return no Alexa attributes
              pass
          attributes['domain'] = domain
          return {'attributes': attributes}
docs: Extract XML content of an HTTP response into dictionary format.
  
          Args:
              response: HTML Response objects
          Returns:
              A dictionary: {alexa-ranking key : alexa-ranking value}.