Пример #1
0
    def load_lyrics(self, title, artist, location, lyrics_url):
        start_time = time.time() * 1000

        self.lyrics_is_loaded = False
        self.lyrics_is_txt = True
        self.liststore.clear()
        self.liststore.append([0, _("Loading lyric ......"), "00:00.00"])
        genreRe = re.compile("^S[a-zA-z0-9]{16}")
        # result = genreRe.match(genre)

        def loader_cb(data):
            if data is None:
                self.load_default(title, artist, location)
            else:
                self.loadData(data)
                self.lyrics_is_loaded = True
                end_time = time.time() * 1000
                print "Load lryics spend time %f:" % (end_time - start_time)

        if lyrics_url is not None:
            print "Load lyrics from google: %s" % lyrics_url

            # lyrics = Analyze.getLyrics(lyrics_url)
            l = rb.Loader()
            l.get_url(lyrics_url, loader_cb)

            return

        filePath = self.find_file(title, artist, location)
        if filePath is not None:
            print "Load lyrics from file: %s" % filePath
            lyrics = Analyze.getLyricsByFile(filePath)
            if lyrics is None:
                self.load_default(title, artist, location)
            else:
                self.loadData(lyrics)
                self.lyrics_is_loaded = True
            end_time = time.time() * 1000
            print "Load lryics spend time %f:" % (end_time - start_time)
            return

        self.load_default(title, artist, location)
        # 看起来没有多大必要设置
        # self.lyrics_is_loaded = True

        end_time = time.time() * 1000
        print "Load lryics spend time %f:" % (end_time - start_time)