mirror of
https://github.com/ultrasn0w/huso.git
synced 2025-12-14 05:39:52 +01:00
Use own struct
This commit is contained in:
30
knecht.go
30
knecht.go
@@ -77,28 +77,42 @@ func GetUserBytesCached(username string) ([]byte, error) {
|
||||
return data, err
|
||||
}
|
||||
|
||||
func GetSeasonDataAll() (*SeasonJikan, []byte, error) {
|
||||
func GetSeasonDataAll() ([]Anime, []byte, error) {
|
||||
color.Infoln("Aktuelle Season abfragen...")
|
||||
data, bytes, err := GetSeasonData(1)
|
||||
data, _, err := GetSeasonData(1)
|
||||
if err != nil {
|
||||
return data, bytes, err
|
||||
return nil, nil, err
|
||||
}
|
||||
color.Infof("%d Anime auf %d Seiten\n", data.Pagination.Items.Total, data.Pagination.LastVisiblePage)
|
||||
animes := make([]Anime, 0)
|
||||
// convert to anime
|
||||
for _, a := range data.Data {
|
||||
animes = append(animes, Anime{
|
||||
Anime: a.MalID,
|
||||
Data: JikanConvert(&a),
|
||||
})
|
||||
}
|
||||
for i := 2; data.Pagination.HasNextPage; i++ {
|
||||
color.Infof("Seite %d abfragen...\n", i)
|
||||
time.Sleep(time.Second)
|
||||
newData, _, err := GetSeasonData(i)
|
||||
if err != nil {
|
||||
return data, nil, err
|
||||
return nil, nil, err
|
||||
}
|
||||
data.Pagination.CurrentPage = newData.Pagination.CurrentPage
|
||||
data.Pagination.HasNextPage = newData.Pagination.HasNextPage
|
||||
data.Data = append(data.Data, newData.Data...)
|
||||
data.Pagination.Items.Count += newData.Pagination.Items.Count
|
||||
// convert to anime
|
||||
for _, a := range newData.Data {
|
||||
animes = append(animes, Anime{
|
||||
Anime: a.MalID,
|
||||
Data: JikanConvert(&a),
|
||||
})
|
||||
}
|
||||
}
|
||||
color.Infof("%d Anime bekommen\n", len(data.Data))
|
||||
bytes, err = json.Marshal(data)
|
||||
return data, bytes, err
|
||||
color.Infof("%d Anime bekommen\n", len(animes))
|
||||
bytes, err := json.Marshal(animes)
|
||||
return animes, bytes, err
|
||||
}
|
||||
|
||||
func GetSeasonData(page int) (*SeasonJikan, []byte, error) {
|
||||
|
||||
Reference in New Issue
Block a user