Example #1
0
 def parse_releases_from_xml(self, release_xml):
     for node in release_xml:
         release = Metadata()
         release_to_metadata(node, release)
         rg_node = node.release_group[0]
         release_group_to_metadata(rg_node, release)
         if "medium_list" in node.children:
             medium_list = node.medium_list[0]
             release["format"] = media_formats_from_node(medium_list)
             release["tracks"] = medium_list.track_count[0].text
         countries = country_list_from_node(node)
         if countries:
             release["country"] = ", ".join(countries)
         self.search_results.append(release)
Example #2
0
 def parse_tracks_from_xml(self, tracks_xml):
     for node in tracks_xml:
         if "release_list" in node.children and "release" in node.release_list[0].children:
             for rel_node in node.release_list[0].release:
                 track = Metadata()
                 recording_to_metadata(node, track)
                 release_to_metadata(rel_node, track)
                 rg_node = rel_node.release_group[0]
                 release_group_to_metadata(rg_node, track)
                 countries = country_list_from_node(rel_node)
                 if countries:
                     track["country"] = ", ".join(countries)
                 self.search_results.append((track, node))
         else:
             # This handles the case when no release is associated with a track
             # i.e. the track is an NAT
             track = Metadata()
             recording_to_metadata(node, track)
             track["album"] = _("Standalone Recording")
             self.search_results.append((track, node))