Sigh....

def _parse_entry(self, dom):
        """Sigh...."""
        entry = {}
        for tag in self._cap_tags:
            # we need to handle the geocodes a bit differently
            if tag == 'cap:geocode':
                try:
                    geotypes = []
                    # FIXME: this will parse VTEC and add it to the feed as well, that's both a feature and a bug
                    for item in dom.getElementsByTagName('valueName'):
                        geotypes.append(str(item.firstChild.data))
                    n = 0
                    for geotype in geotypes:
                        try:
                            entry[geotype] = str(dom.getElementsByTagName('value')[n].firstChild.data).split(' ')
                        except AttributeError:
                            pass
                        n = n + 1
                finally:
                    try:
                        entry['samecodes'] = [x for x in entry['FIPS6'] if str(x).isdigit()]  # handle bad nws data
                    except Exception:
                        entry['samecodes'] = []
            else:
                try:
                    entry[tag] = dom.getElementsByTagName(tag)[0].firstChild.data
                except AttributeError:
                    entry[tag] = ''
        return entry