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
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)