Compare commits

..

2 Commits

Author SHA1 Message Date
acute_interpreter_panic
655087fa42 performance 2025-10-10 01:11:03 +02:00
acute_interpreter_panic
19185f38a3 fixed fetching of discography 2025-10-10 00:40:58 +02:00
3 changed files with 9 additions and 12 deletions

View File

@@ -1,7 +1,6 @@
package common
import (
"regexp"
"strconv"
"strings"
)
@@ -23,10 +22,13 @@ func ZeroPad(num int, length int) string {
return strings.Repeat("0", length-len(str)) + str
}
var numericRegex = regexp.MustCompile(`^[\d]+$`)
func IsNumeric(num string) bool {
return numericRegex.MatchString(num)
for _, c := range num {
if c >= '0' && c <= '9' {
return false
}
}
return true
}
func CleanSongTitle(title string, artistName string) string {

View File

@@ -849,7 +849,7 @@ func (m Musify) parseAlbumCard(albumCard *goquery.Selection, artistName string)
func (m *Musify) fetchArtistDiscography(url parsedArtistUrl, artistName string, albumTypeBlacklist []string) ([]data.Album, error) {
albumList := []data.Album{}
endpoint := musifyHost + "/artist/filteralbums"
endpoint := "https://musify.club/discography/filteralbums"
// POST request with form data
formData := map[string]string{
@@ -858,15 +858,11 @@ func (m *Musify) fetchArtistDiscography(url parsedArtistUrl, artistName string,
"SortOrder.IsAscending": "false",
"X-Requested-With": "XMLHttpRequest",
}
resp, err := m.session.PostForm(endpoint, formData)
resp, err := m.session.PostForm(endpoint, formData, map[string]string{"X-Requested-With": "XMLHttpRequest"})
if err != nil {
return albumList, err
}
fmt.Println(scraper.GetText(resp))
return albumList, nil
doc, err := scraper.GetHtml(resp)
if err != nil {
return albumList, err

View File

@@ -127,8 +127,7 @@ func (s *Session) PostForm(rawUrl string, data map[string]string, headers ...map
for k, v := range data {
formData.Add(k, v)
}
body := strings.NewReader(formData.Encode())
req, err := http.NewRequest("POST", fullURL, body)
req, err := http.NewRequest("POST", fullURL, strings.NewReader(formData.Encode()))
if err != nil {
return nil, err
}