添加自定义元数据语言

This commit is contained in:
itouakirai
2024-09-28 16:12:14 +08:00
committed by GitHub
parent 05f976a4e8
commit 455a13b59a

10
main.go
View File

@@ -51,6 +51,7 @@ var (
type Config struct {
MediaUserToken string `yaml:"media-user-token"`
AuthorizationToken string `yaml:"authorization-token"`
Language string `yaml:"language"`
SaveLrcFile bool `yaml:"save-lrc-file"`
LrcType string `yaml:"lrc-type"`
LrcFormat string `yaml:"lrc-format"`
@@ -1119,6 +1120,8 @@ func getUrlArtistName(artistUrl string, token string) (string, error) {
req.Header.Set("Authorization", fmt.Sprintf("Bearer %s", token))
req.Header.Set("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36")
req.Header.Set("Origin", "https://music.apple.com")
query := url.Values{}
query.Set("l", config.Language)
do, err := http.DefaultClient.Do(req)
if err != nil {
return "", err
@@ -1143,7 +1146,7 @@ func checkArtist(artistUrl string, token string) ([]string, error) {
var urls []string
var options []string
for {
req, err := http.NewRequest("GET", fmt.Sprintf("https://amp-api.music.apple.com/v1/catalog/%s/artists/%s/albums?limit=100&offset=%d", storefront, artistId, Num), nil)
req, err := http.NewRequest("GET", fmt.Sprintf("https://amp-api.music.apple.com/v1/catalog/%s/artists/%s/albums?limit=100&offset=%d&l=%s", storefront, artistId, Num, config.Language), nil)
if err != nil {
return nil, err
}
@@ -1263,7 +1266,7 @@ func getMeta(albumId string, token string, storefront string) (*AutoGenerated, e
query.Set("fields[albums:albums]", "artistName,artwork,name,releaseDate,url")
query.Set("fields[record-labels]", "name")
query.Set("extend", "editorialVideo")
// query.Set("l", "en-gb")
query.Set("l", config.Language)
req.URL.RawQuery = query.Encode()
do, err := http.DefaultClient.Do(req)
if err != nil {
@@ -1285,7 +1288,7 @@ func getMeta(albumId string, token string, storefront string) (*AutoGenerated, e
for {
page = page + 100
pageStr := strconv.Itoa(page)
req, err := http.NewRequest("GET", fmt.Sprintf("https://amp-api.music.apple.com/v1/catalog/%s/%s/%s/tracks?offset=%s", storefront, mtype, albumId, pageStr), nil)
req, err := http.NewRequest("GET", fmt.Sprintf("https://amp-api.music.apple.com/v1/catalog/%s/%s/%s/tracks?offset=%s&l=%s", storefront, mtype, albumId, pageStr, config.Language), nil)
if err != nil {
return nil, err
}
@@ -2597,6 +2600,7 @@ func getInfoFromAdam(adamId string, token string, storefront string) (*SongData,
query := url.Values{}
query.Set("extend", "extendedAssetUrls")
query.Set("include", "albums")
query.Set("l", config.Language)
request.URL.RawQuery = query.Encode()
request.Header.Set("Authorization", fmt.Sprintf("Bearer %s", token))