add api. fix kuwo

This commit is contained in:
aynakeya
2024-04-29 22:51:43 -07:00
parent 2cbcab34a3
commit 4b54a301c9
3 changed files with 23 additions and 0 deletions

8
api.go
View File

@@ -57,6 +57,14 @@ func MatchMedia(keyword string) (MetaData, bool) {
return MetaData{}, false
}
func MatchMediaByProvider(provider string, uri string) (MetaData, bool) {
p, ok := GetProvider(provider)
if !ok {
return MetaData{}, false
}
return p.MatchMedia(uri)
}
//func GetPlaylist(meta *model.Meta) ([]*model.Media, error) {
// if v, ok := Providers[meta.Name]; ok {
// return v.GetPlaylist(meta)

View File

@@ -1,6 +1,7 @@
package kuwo
import (
"errors"
"fmt"
"github.com/AynaLivePlayer/miaosic"
"github.com/AynaLivePlayer/miaosic/providers"
@@ -77,6 +78,9 @@ func NewKuwo() *Kuwo {
deepcolor.ParserGJson,
func(resp *gjson.Result, urls *[]miaosic.MediaUrl) error {
if resp.Get("code").Int() != 200 {
return errors.New("miaosic: kuwo api error" + resp.Get("msg").String())
}
if resp.Get("data.url").String() == "" {
return miaosic.ErrorExternalApi
}

View File

@@ -54,6 +54,17 @@ func TestKuwo_GetMusic(t *testing.T) {
t.Log(urls)
}
func TestKuwo_GetMusic2(t *testing.T) {
meta := miaosic.MetaData{
Provider: api.GetName(),
Identifier: "6510096",
}
urls, err := api.GetMediaUrl(meta, miaosic.QualityAny)
require.NoError(t, err)
require.NotEmpty(t, urls)
t.Log(urls)
}
func TestKuwo_UpdateMediaLyric(t *testing.T) {
meta := miaosic.MetaData{
Provider: api.GetName(),