mirror of
https://github.com/ultrasn0w/huso.git
synced 2025-12-14 05:39:52 +01:00
Users + Nuts + Sauce
This commit is contained in:
64
knecht.go
64
knecht.go
@@ -11,9 +11,47 @@ import (
|
||||
"github.com/valyala/fasthttp"
|
||||
)
|
||||
|
||||
func GetUserAnimeListData(username, status string) (*AnimeListMal, []byte, error) {
|
||||
var list AnimeListMal
|
||||
body, err := GetUserAnimeListBytes(username, status)
|
||||
if err != nil {
|
||||
return nil, body, err
|
||||
}
|
||||
err = json.Unmarshal(body, &list)
|
||||
return &list, body, err
|
||||
}
|
||||
|
||||
func GetUserAnimeListBytes(username, status string) ([]byte, error) {
|
||||
return GetDataMal(userApiMal + username + "/animelist?limit=1000&status=" + status)
|
||||
}
|
||||
|
||||
func GetUserData(username string) (*UserJikan, []byte, error) {
|
||||
var user UserJikan
|
||||
body, err := GetUserBytesCached(username)
|
||||
if err != nil {
|
||||
return nil, body, err
|
||||
}
|
||||
err = json.Unmarshal(body, &user)
|
||||
return &user, body, err
|
||||
}
|
||||
|
||||
func GetUserBytesCached(username string) ([]byte, error) {
|
||||
key := userApiJikan + username
|
||||
data, err := cache.Get(key)
|
||||
if err != nil {
|
||||
data, err = GetDataJikan(key)
|
||||
if err != nil {
|
||||
return data, err
|
||||
}
|
||||
cache.Set(key, data)
|
||||
return data, err
|
||||
}
|
||||
return data, err
|
||||
}
|
||||
|
||||
func GetSeasonDataAll() (*SeasonJikan, []byte, error) {
|
||||
color.Infoln("Aktuelle Season abfragen...")
|
||||
data, bytes, err := GetSeasonDataJikan(1)
|
||||
data, bytes, err := GetSeasonData(1)
|
||||
if err != nil {
|
||||
return data, bytes, err
|
||||
}
|
||||
@@ -21,7 +59,7 @@ func GetSeasonDataAll() (*SeasonJikan, []byte, error) {
|
||||
for i := 2; data.Pagination.HasNextPage; i++ {
|
||||
color.Infof("Seite %d abfragen...\n", i)
|
||||
time.Sleep(time.Second)
|
||||
newData, _, err := GetSeasonDataJikan(i)
|
||||
newData, _, err := GetSeasonData(i)
|
||||
if err != nil {
|
||||
return data, nil, err
|
||||
}
|
||||
@@ -35,23 +73,23 @@ func GetSeasonDataAll() (*SeasonJikan, []byte, error) {
|
||||
return data, bytes, err
|
||||
}
|
||||
|
||||
func GetSeasonBytesJikan(page int) ([]byte, error) {
|
||||
func GetSeasonData(page int) (*SeasonJikan, []byte, error) {
|
||||
var data SeasonJikan
|
||||
body, err := GetSeasonBytes(page)
|
||||
if err != nil {
|
||||
return nil, body, err
|
||||
}
|
||||
err = json.Unmarshal(body, &data)
|
||||
return &data, body, err
|
||||
}
|
||||
|
||||
func GetSeasonBytes(page int) ([]byte, error) {
|
||||
if page != 0 {
|
||||
return GetDataJikan(seasonApiJikan + "?page=" + strconv.Itoa(page))
|
||||
}
|
||||
return GetDataJikan(seasonApiJikan)
|
||||
}
|
||||
|
||||
func GetSeasonDataJikan(page int) (*SeasonJikan, []byte, error) {
|
||||
var data SeasonJikan
|
||||
body, err := GetSeasonBytesJikan(page)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
err = json.Unmarshal(body, &data)
|
||||
return &data, body, err
|
||||
}
|
||||
|
||||
func GetDataMal(apiAddr string) ([]byte, error) {
|
||||
var body []byte
|
||||
req := fasthttp.AcquireRequest()
|
||||
|
||||
Reference in New Issue
Block a user