From 35cc3201bc29179eb2a8249dde92a2262abe46fb Mon Sep 17 00:00:00 2001 From: VnPower Date: Tue, 22 Aug 2023 21:12:23 +0700 Subject: [PATCH] Feature: date query for ranking page #20 --- handler/constants.go | 2 +- handler/misc.go | 4 ++-- views/pages.go | 5 +++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/handler/constants.go b/handler/constants.go index 090c8b4..40d6505 100644 --- a/handler/constants.go +++ b/handler/constants.go @@ -6,7 +6,7 @@ const ( ArtworkRelatedURL = "https://www.pixiv.net/ajax/illust/%s/recommend/init?limit=%d" ArtworkCommentsURL = "https://www.pixiv.net/ajax/illusts/comments/roots?illust_id=%s&limit=100" ArtworkNewestURL = "https://www.pixiv.net/ajax/illust/new?limit=30&type=%s&r18=%s&lastId=%s" - ArtworkRankingURL = "https://www.pixiv.net/ranking.php?format=json&mode=%s&content=%s&p=%s" + ArtworkRankingURL = "https://www.pixiv.net/ranking.php?format=json&mode=%s&content=%s&date=%s&p=%s" ArtworkDiscoveryURL = "https://www.pixiv.net/ajax/discovery/artworks?mode=%s&limit=%d" SearchTagURL = "https://www.pixiv.net/ajax/search/tags/%s" SearchArtworksURL = "https://www.pixiv.net/ajax/search/%s/%s?order=%s&mode=%s&p=%s" diff --git a/handler/misc.go b/handler/misc.go index e8bc424..0f63bac 100644 --- a/handler/misc.go +++ b/handler/misc.go @@ -37,11 +37,11 @@ func (p *PixivClient) GetNewestArtworks(worktype string, r18 string) ([]models.I return newWorks, nil } -func (p *PixivClient) GetRanking(mode string, content string, page string) (models.RankingResponse, error) { +func (p *PixivClient) GetRanking(mode string, content string, date string, page string) (models.RankingResponse, error) { // Ranking data is formatted differently var pr models.RankingResponse - url := fmt.Sprintf(ArtworkRankingURL, mode, content, page) + url := fmt.Sprintf(ArtworkRankingURL, mode, content, date, page) s, err := p.TextRequest(url) diff --git a/views/pages.go b/views/pages.go index bd8a571..2c9d2cf 100644 --- a/views/pages.go +++ b/views/pages.go @@ -128,14 +128,15 @@ func ranking_page(c *fiber.Ctx) error { image_proxy = &configs.ProxyServer } - queries := make(map[string]string, 3) + queries := make(map[string]string, 4) queries["Mode"] = c.Query("mode", "daily") queries["Content"] = c.Query("content", "all") + queries["Date"] = c.Query("date", "") page := c.Query("page", "1") pageInt, _ := strconv.Atoi(page) - response, err := PC.GetRanking(queries["Mode"], queries["Content"], page) + response, err := PC.GetRanking(queries["Mode"], queries["Content"], queries["Date"], page) if err != nil { return err }