Skip to content

Commit

Permalink
fix fuo_ytmusic cannot load when fuo_netease not installed (#7)
Browse files Browse the repository at this point in the history
  • Loading branch information
mokurin000 authored Jan 10, 2024
1 parent df0c1e6 commit a4ae96d
Showing 1 changed file with 13 additions and 8 deletions.
21 changes: 13 additions & 8 deletions fuo_ytmusic/provider.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
from feeluown.media import Quality, Media, VideoAudioManifest, MediaType
from feeluown.library import SearchType, SimpleSearchResult
from feeluown.library.model_protocol import BriefSongProtocol
from fuo_netease.provider import NeteaseProvider

from fuo_ytmusic.consts import HEADER_FILE
from fuo_ytmusic.models import Categories, YtBriefUserModel, YtmusicWatchPlaylistSong
Expand Down Expand Up @@ -243,14 +242,20 @@ def deprecated_song_get_lyric(self, song):
# 歌词获取报错的 workaround
if self._app is None:
return None
provider: NeteaseProvider = self._app.library.get('netease')
if provider is None:
try:
from fuo_netease.provider import NeteaseProvider
provider: NeteaseProvider = self._app.library.get('netease')
if provider is None:
return None
result = provider.search(f'{song.title} {song.artists_name}', type_=SearchType.so)
songs = result.songs
if len(songs) < 1:
return None
return provider.song_get_lyric(songs[0])
except ModuleNotFoundError:
return None
result = provider.search(f'{song.title} {song.artists_name}', type_=SearchType.so)
songs = result.songs
if len(songs) < 1:
return None
return provider.song_get_lyric(songs[0])
except:
raise

def video_list_quality(self, video) -> List[Quality.Video]:
id_ = video.identifier
Expand Down

0 comments on commit a4ae96d

Please sign in to comment.