Some work on unfying actions on different sources.

This commit is contained in:
2021-02-27 19:38:43 +03:00
parent 3e94eb51d2
commit e70d1de06f
7 changed files with 217 additions and 4 deletions

View File

@@ -102,7 +102,7 @@ func (p *Pixiv) GetIllust(illustID string) (r Illust, err error) {
page.Height = r.Height
r.Pages = append(r.Pages, page)
}
for _, tag := range r.Tags.Tags {
for _, tag := range r.TagsOriginal.Tags {
if len(tag.Translation.En) > 0 {
r.stringTags = append(r.stringTags, tag.Translation.En)
} else if len(tag.Romaji) > 0 {

View File

@@ -13,7 +13,7 @@ type Illust struct {
IllustType int `json:"illustType"`
XRestrict int `json:"xRestrict"`
Sl int `json:"sl"`
URL string `json:"url"`
URLoriginal string `json:"url"`
Pages []IllustPage
URLs struct {
Mini string `json:"mini"`
@@ -22,8 +22,8 @@ type Illust struct {
Regular string `json:"regular"`
Original string `json:"original"`
} `json:"urls"`
Description string `json:"description"`
Tags struct {
Description string `json:"description"`
TagsOriginal struct {
AuthorID string `json:"authorId"`
IsLocked bool `json:"isLocked"`
Tags []IllustTag `json:"tags"`
@@ -57,6 +57,41 @@ func (i *Illust) TagsString() (r string) {
return
}
func (i *Illust) Name() string {
return i.IllustTitle
}
func (i *Illust) Author() string {
return i.UserName
}
func (i *Illust) Comment() string {
return i.IllustComment
}
func (i *Illust) Tags() []string {
return i.stringTags
}
func (i *Illust) Files() (urls []string) {
if len(i.Pages) > 0 {
for _, page := range i.Pages {
urls = append(urls, page.URLs.Original)
}
} else {
urls = append(urls, i.URLs.Original)
}
return
}
func (i *Illust) URL() string {
return i.URLoriginal
}
func (i *Illust) Type() string {
return "pixiv"
}
//IllustTag .
type IllustTag struct {
Tag string `json:"tag"`