コード例 #1
0
    def multiple_engine(self, song, lrc_path, artist, title):    
        try:
            ret = False
            
            ting_result = poster.query_lrc_info(artist, title)
            if ting_result:
                urls = [item[2] for item in ting_result]
                for url in urls:
                    ret = utils.download(url, lrc_path)
                    if ret:
                        return lrc_path
            
            result = TTPlayer().request(artist, title)

            if result:
                urls = [item[2] for item in result]                
                for url in urls:
                    ret = utils.download(url, lrc_path)
                    if ret and self.vaild_lrc(lrc_path):
                        return lrc_path
                    
            ttpod_result = TTPod().request_data(artist, title)        
            if ttpod_result:
                with open(lrc_path, 'wb') as fp:
                    fp.write(ttpod_result)
                    return lrc_path
                        
            duomi_result = DUOMI().request(artist, title)
            if duomi_result:
                urls = [item[2] for item in duomi_result]                
                for url in urls:
                    ret = utils.download(url, lrc_path, "gbk")
                    if ret and self.vaild_lrc(lrc_path):
                        return lrc_path
                        
            soso_result =  SOSO().request(artist, title)
            if soso_result:
                urls = [item[2] for item in soso_result]                
                for url in urls:
                    ret = utils.download(url, lrc_path, "gb18030")
                    if ret and self.vaild_lrc(lrc_path):
                        return lrc_path
            try:    
                os.unlink(lrc_path)
            except:    
                pass
                
            return None
                    
        except Exception, e:
            print e
            return None
コード例 #2
0
    def multiple_engine(self, song, lrc_path, artist, title):
        try:
            ret = False

            ting_result = poster.query_lrc_info(artist, title)
            if ting_result:
                urls = [item[2] for item in ting_result]
                for url in urls:
                    ret = utils.download(url, lrc_path)
                    if ret:
                        return lrc_path

            result = TTPlayer().request(artist, title)

            if result:
                urls = [item[2] for item in result]
                for url in urls:
                    ret = utils.download(url, lrc_path)
                    if ret and self.vaild_lrc(lrc_path):
                        return lrc_path

            ttpod_result = TTPod().request_data(artist, title)
            if ttpod_result:
                with open(lrc_path, 'wb') as fp:
                    fp.write(ttpod_result)
                    return lrc_path

            duomi_result = DUOMI().request(artist, title)
            if duomi_result:
                urls = [item[2] for item in duomi_result]
                for url in urls:
                    ret = utils.download(url, lrc_path, "gbk")
                    if ret and self.vaild_lrc(lrc_path):
                        return lrc_path

            soso_result = SOSO().request(artist, title)
            if soso_result:
                urls = [item[2] for item in soso_result]
                for url in urls:
                    ret = utils.download(url, lrc_path, "gb18030")
                    if ret and self.vaild_lrc(lrc_path):
                        return lrc_path
            try:
                os.unlink(lrc_path)
            except:
                pass

            return None

        except Exception, e:
            print e
            return None
コード例 #3
0
 def search_engine(self, artist, title, pid):    
     
     ting_result = poster.query_lrc_info(artist, title)
     self.render_lyrics(ting_result, pid=pid)
     
     ttplayer_result = TTPlayer().request(artist, title)
     self.render_lyrics(ttplayer_result, pid=pid)
     
     ttpod_result = TTPod().request(artist, title)        
     self.render_lyrics(ttpod_result, pid=pid)
     
     duomi_result = DUOMI().request(artist, title)
     self.render_lyrics(duomi_result, pid=pid, last=True)