mirror of
https://github.com/zhaarey/apple-music-downloader.git
synced 2025-10-23 15:11:05 +00:00
Compare commits
4 Commits
81b023e85c
...
a086da99c0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a086da99c0 | ||
|
|
2ee7b50082 | ||
|
|
5d25210432 | ||
|
|
6940c82d70 |
2
main.go
2
main.go
@@ -356,6 +356,7 @@ func getMeta(albumId string, token string, storefront string) (*structs.AutoGene
|
|||||||
}
|
}
|
||||||
if strings.Contains(albumId, "pl.") {
|
if strings.Contains(albumId, "pl.") {
|
||||||
obj.Data[0].Attributes.ArtistName = "Apple Music"
|
obj.Data[0].Attributes.ArtistName = "Apple Music"
|
||||||
|
}
|
||||||
if len(obj.Data[0].Relationships.Tracks.Next) > 0 {
|
if len(obj.Data[0].Relationships.Tracks.Next) > 0 {
|
||||||
next = obj.Data[0].Relationships.Tracks.Next
|
next = obj.Data[0].Relationships.Tracks.Next
|
||||||
for {
|
for {
|
||||||
@@ -388,7 +389,6 @@ func getMeta(albumId string, token string, storefront string) (*structs.AutoGene
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return obj, nil
|
return obj, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ type SongLyrics struct {
|
|||||||
} `json:"data"`
|
} `json:"data"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func Get(storefront, songId, lrcType, language, lrcFormat, token, mediaUserToken string) (string, error) {
|
func Get(storefront, songId, lrcType, language, lrcFormat, token, mediaUserToken string) (string, error) {
|
||||||
if len(mediaUserToken) < 50 {
|
if len(mediaUserToken) < 50 {
|
||||||
return "", errors.New("MediaUserToken not set")
|
return "", errors.New("MediaUserToken not set")
|
||||||
@@ -166,7 +165,7 @@ func conventSyllableTTMLToLRC(ttml string) (string, error) {
|
|||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
var lrcLines []string
|
var lrcLines []string
|
||||||
parseTime := func(timeValue string) (string, error) {
|
parseTime := func(timeValue string, newLine bool) (string, error) {
|
||||||
var h, m, s, ms int
|
var h, m, s, ms int
|
||||||
if strings.Contains(timeValue, ":") {
|
if strings.Contains(timeValue, ":") {
|
||||||
_, err = fmt.Sscanf(timeValue, "%d:%d:%d.%d", &h, &m, &s, &ms)
|
_, err = fmt.Sscanf(timeValue, "%d:%d:%d.%d", &h, &m, &s, &ms)
|
||||||
@@ -183,7 +182,11 @@ func conventSyllableTTMLToLRC(ttml string) (string, error) {
|
|||||||
}
|
}
|
||||||
m += h * 60
|
m += h * 60
|
||||||
ms = ms / 10
|
ms = ms / 10
|
||||||
return fmt.Sprintf("[%02d:%02d.%02d]", m, s, ms), nil
|
if newLine {
|
||||||
|
return fmt.Sprintf("[%02d:%02d.%02d]<%02d:%02d.%02d>", m, s, ms, m, s, ms), nil
|
||||||
|
} else {
|
||||||
|
return fmt.Sprintf("<%02d:%02d.%02d>", m, s, ms), nil
|
||||||
|
}
|
||||||
}
|
}
|
||||||
divs := parsedTTML.FindElement("tt").FindElement("body").FindElements("div")
|
divs := parsedTTML.FindElement("tt").FindElement("body").FindElements("div")
|
||||||
//get trans
|
//get trans
|
||||||
@@ -217,11 +220,11 @@ func conventSyllableTTMLToLRC(ttml string) (string, error) {
|
|||||||
if lyric.SelectAttr("begin") == nil {
|
if lyric.SelectAttr("begin") == nil {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
beginTime, err := parseTime(lyric.SelectAttr("begin").Value)
|
beginTime, err := parseTime(lyric.SelectAttr("begin").Value, i == 0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
endTime, err = parseTime(lyric.SelectAttr("end").Value)
|
endTime, err = parseTime(lyric.SelectAttr("end").Value, false)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user