def transformGenres(self): printl("->", self, "S") for key in self._dbMediaFiles: if self._checkKeyValid(key): # only for Pickle transformedGenre = "" for genre in self._dbMediaFiles[key].Genres.split("|"): if Genres.isGenre(genre) is False: newGenre = Genres.getGenre(genre) if newGenre != "Unknown": printl("GENRE: " + str(genre) + " -> " + str(newGenre), self) transformedGenre += newGenre + u"|" else: transformedGenre += genre + u"|" if len(transformedGenre) > 0: transformedGenre = transformedGenre[:len(transformedGenre) - 1] # Remove the last pipe self._dbMediaFiles[key].Genres = transformedGenre
def getGenre(self, info, elem): genre = u"" try: genreList = elem.getElementsByTagName("categories") for genreListItem in genreList: for eGenre in genreListItem.getElementsByTagName("category"): if eGenre.getAttribute("type") == "genre": genre += Genres.getGenre(eGenre.getAttribute("name")) + u"|" if len(genre) > 0: info.Genres = genre[:len(genre) - 1] # Remove the last pipe return info except Exception, ex: printl("Exception: " + str(ex), self)
def getGenre(self, info, elem): try: eGenre = self.getElem(elem, "Genre") if eGenre is not None and eGenre.data is not None and len(eGenre.data) > 0: genres = u"" strGenre = re.sub(u"\r\n", u" ", eGenre.data) strGenre = re.sub(u"\n", u" ", strGenre) strGenres = strGenre.split(u"|") for genre in strGenres: genre = genre.strip() if len(genre) > 1: genres += Genres.getGenre(genre) + u"|" if len(genres) > 1: info.Genres = genres[:len(genres) - 1] # Remove the last pipe return info except Exception, ex: printl("Exception: " + str(ex), self)
def readRola(self, song): '''Funcion auxiliar que lee las etiquetas de la rola y la envia a la base de datos.''' pathRola = self.path + "/" + song tags = eyed3.load(pathRola).tag if len(tags) == 0: return rola = Rola.Rola(path) if tags.artist != None: rola.setPerformer(tags.artist) else: rola.setPerformer("Unknown") if tags.title != None: rola.setTitle(tags.title) else: rola.setTitle("Unknown") if tags.album != None: rola.setAlbum(album) else: rola.setAlbum("Unknown") if tags.year != 0: rola.setYear(int(tags.year)) else: rola.setYear(time.ctime(os.path.getctime(path))) if tags.track_num != None: track = 0 if tags.track_num.find("/") != -1: trackNum = tags.track_num.split("/") track = int(trackNum[0]) else: track = int(tags.track_num) rola.setTrack(track) if tags.genre != -1: genre = Genres.Genres().getStringGenre(tags.genre) rola.setGenre(genre) Dao.insertRola(rola)
def getGenre(self, info, elem): try: eGenre = self.getElem(elem, "Genre") if eGenre is not None and eGenre.data is not None and len( eGenre.data) > 0: genres = u"" strGenre = re.sub(u"\r\n", u" ", eGenre.data) strGenre = re.sub(u"\n", u" ", strGenre) strGenres = strGenre.split(u"|") for genre in strGenres: genre = genre.strip() if len(genre) > 1: genres += Genres.getGenre(genre) + u"|" if len(genres) > 1: info.Genres = genres[:len(genres) - 1] # Remove the last pipe return info except Exception, ex: printl("Exception: " + str(ex), self)