podgrab/model/podcastModels.go

103 lines
3.0 KiB
Go

package model
import "encoding/xml"
//PodcastData is
type PodcastData struct {
XMLName xml.Name `xml:"rss"`
Text string `xml:",chardata"`
Itunes string `xml:"itunes,attr"`
Atom string `xml:"atom,attr"`
Media string `xml:"media,attr"`
Psc string `xml:"psc,attr"`
Omny string `xml:"omny,attr"`
Content string `xml:"content,attr"`
Googleplay string `xml:"googleplay,attr"`
Acast string `xml:"acast,attr"`
Version string `xml:"version,attr"`
Channel struct {
Text string `xml:",chardata"`
Language string `xml:"language"`
Link []struct {
Text string `xml:",chardata"`
Rel string `xml:"rel,attr"`
Type string `xml:"type,attr"`
Href string `xml:"href,attr"`
} `xml:"link"`
Title string `xml:"title"`
Description string `xml:"description"`
Type string `xml:"type"`
Summary string `xml:"summary"`
Owner struct {
Text string `xml:",chardata"`
Name string `xml:"name"`
Email string `xml:"email"`
} `xml:"owner"`
Author string `xml:"author"`
Copyright string `xml:"copyright"`
Explicit string `xml:"explicit"`
Category struct {
Text string `xml:",chardata"`
AttrText string `xml:"text,attr"`
Category struct {
Text string `xml:",chardata"`
AttrText string `xml:"text,attr"`
} `xml:"category"`
} `xml:"category"`
Image struct {
Text string `xml:",chardata"`
Href string `xml:"href,attr"`
URL string `xml:"url"`
Title string `xml:"title"`
Link string `xml:"link"`
} `xml:"image"`
Item []struct {
Text string `xml:",chardata"`
Title string `xml:"title"`
Description string `xml:"description"`
Encoded string `xml:"encoded"`
Summary string `xml:"summary"`
EpisodeType string `xml:"episodeType"`
Author string `xml:"author"`
Image struct {
Text string `xml:",chardata"`
Href string `xml:"href,attr"`
} `xml:"image"`
Content []struct {
Text string `xml:",chardata"`
URL string `xml:"url,attr"`
Type string `xml:"type,attr"`
Player struct {
Text string `xml:",chardata"`
URL string `xml:"url,attr"`
} `xml:"player"`
} `xml:"content"`
Guid struct {
Text string `xml:",chardata"`
IsPermaLink string `xml:"isPermaLink,attr"`
} `xml:"guid"`
ClipId string `xml:"clipId"`
PubDate string `xml:"pubDate"`
Duration string `xml:"duration"`
Enclosure struct {
Text string `xml:",chardata"`
URL string `xml:"url,attr"`
Length string `xml:"length,attr"`
Type string `xml:"type,attr"`
} `xml:"enclosure"`
Link string `xml:"link"`
StitcherId string `xml:"stitcherId"`
Episode string `xml:"episode"`
} `xml:"item"`
} `xml:"channel"`
}
type CommonSearchResultModel struct {
URL string `json:"url"`
Title string `json:"title"`
Image string `json:"image"`
AlreadySaved bool `json:"already_saved"`
Description string `json:"description"`
Categories []string `json:"categories"`
}