mirror of
https://github.com/ultrasn0w/huso.git
synced 2025-12-15 19:49:53 +01:00
search hacks
This commit is contained in:
33
knecht.go
33
knecht.go
@@ -8,6 +8,7 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
"unicode/utf8"
|
||||||
|
|
||||||
"github.com/gookit/color"
|
"github.com/gookit/color"
|
||||||
"github.com/valyala/fasthttp"
|
"github.com/valyala/fasthttp"
|
||||||
@@ -18,19 +19,29 @@ func SearchAnimeData(query string) ([]Anime, []byte, error) {
|
|||||||
data, err := searchCache.Get(query)
|
data, err := searchCache.Get(query)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
err = nil
|
err = nil
|
||||||
dataMal, err := GetDataMal(searchApiMal + query + "&fields=id,title,main_picture,alternative_titles,start_date,end_date,synopsis,mean,rank,popularity,num_list_users,num_scoring_users,nsfw,media_type,status,genres,my_list_status,num_episodes,start_season,broadcast,source,average_episode_duration,rating,studios&limit=100")
|
|
||||||
if err != nil {
|
|
||||||
return nil, nil, err
|
|
||||||
}
|
|
||||||
var animeList AnimeListMal
|
|
||||||
animes = make([]Anime, 0)
|
animes = make([]Anime, 0)
|
||||||
err = json.Unmarshal(dataMal, &animeList)
|
parseId, err := strconv.ParseInt(query, 10, 64)
|
||||||
if err != nil {
|
if err == nil && parseId > 0 {
|
||||||
return nil, nil, err
|
anime, err := SearchAnime(parseId)
|
||||||
|
if err == nil {
|
||||||
|
animes = append(animes, *anime)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// convert to anime
|
err = nil
|
||||||
for _, a := range animeList.Data {
|
if utf8.RuneCountInString(query) > 2 {
|
||||||
animes = append(animes, MalConvert(&a.Node))
|
dataMal, err := GetDataMal(searchApiMal + query + "&fields=id,title,main_picture,alternative_titles,start_date,end_date,synopsis,mean,rank,popularity,num_list_users,num_scoring_users,nsfw,media_type,status,genres,my_list_status,num_episodes,start_season,broadcast,source,average_episode_duration,rating,studios&limit=100")
|
||||||
|
if err != nil {
|
||||||
|
return nil, nil, err
|
||||||
|
}
|
||||||
|
var animeList AnimeListMal
|
||||||
|
err = json.Unmarshal(dataMal, &animeList)
|
||||||
|
if err != nil {
|
||||||
|
return nil, nil, err
|
||||||
|
}
|
||||||
|
// convert to anime
|
||||||
|
for _, a := range animeList.Data {
|
||||||
|
animes = append(animes, MalConvert(&a.Node))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
data, err = json.Marshal(animes)
|
data, err = json.Marshal(animes)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user