def process_artist_groups(elem): name = None groups = [] for e in elem.iterchildren(): if e.tag == 'name' and e.text is not None: name = e.text if e.tag == 'groups': for f in e.iterchildren(tag='name'): if f.text is not None: groups.append(f.text) if name is None or not groups: return artist = Artist.get_by_name(name) if artist is None: return artist.set_groups(groups) return artist
def process_artist_aliases(elem): name = None aliases = [] for e in elem.iterchildren(): if e.tag == 'name' and e.text is not None: name = e.text if e.tag == 'aliases': for f in e.iterchildren(tag='name'): if f.text is not None: aliases.append(f.text) if name is None or not aliases: return artist = Artist.get_by_name(name) if artist is None: return artist.set_aliases(aliases) return artist