api

package
v0.0.0-...-257ae38 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 7, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	LoginSuccess           = LoginStatus(0)
	LoginNotScan           = LoginStatus(86101)
	LoginScanButNotConfirm = LoginStatus(86090)
	LoginExpired           = LoginStatus(86038)
)
View Source
var LogonClient = new(BClient)

LogonClient maintain logon status by scheduler job

Functions

func GenerateAndEmail

func GenerateAndEmail(content string, level qrcode.RecoveryLevel, writer io.Writer) error

Types

type Archive

type Archive struct {
	Aid            string    `json:"aid"`
	Badge          Badge     `json:"badge"`
	Bvid           string    `json:"bvid"`
	Cover          string    `json:"cover"`
	Desc           string    `json:"desc"`
	DisablePreview int64     `json:"disable_preview"`
	DurationText   string    `json:"duration_text"`
	JumpURL        string    `json:"jump_url"`
	Stat           VideoStat `json:"stat"`
	Title          string    `json:"title"`
	Type           int64     `json:"type"`
}

type BClient

type BClient struct {
	HttpClient *http.Client
	// contains filtered or unexported fields
}

func GetLogonClient

func GetLogonClient() (*BClient, error)

func GetLogonClientV2 deprecated

func GetLogonClientV2() (*BClient, error)

Deprecated: use GetLogonClient

func MustLogonClient

func MustLogonClient() *BClient

func (*BClient) DoGet

func (client *BClient) DoGet(url string) ([]byte, error)

func (*BClient) Get

func (client *BClient) Get(url string) ([]byte, error)

func (*BClient) GetAllP

func (client *BClient) GetAllP(url string) (*m.BPResp[json.RawMessage], error)

func (*BClient) GetListAll4FavOfFolder

func (client *BClient) GetListAll4FavOfFolder(url string) (*m.BResp[m.BRList[json.RawMessage]], error)

func (*BClient) GetListAll4SpaceVideo

func (client *BClient) GetListAll4SpaceVideo(url string) (*m.BResp[m.BRListOfItem[json.RawMessage]], error)

func (*BClient) GetP

func (client *BClient) GetP(url string) ([]byte, error)

func (*BClient) NavInfo

func (client *BClient) NavInfo() (*NavInfoResp, error)

func (*BClient) PlayUrl

func (client *BClient) PlayUrl(bvid string, cid int64, qn c.Qn, fnval c.Fnval) (*m.BResp[PlayUrl], error)

func (*BClient) SeasonSection

func (client *BClient) SeasonSection(ssID string, epID string) (*m.BRespR[SeasonInfo], error)

func (*BClient) SetCookie

func (client *BClient) SetCookie(cookie []string)

func (*BClient) VideoInfo

func (client *BClient) VideoInfo(bvid string) (*m.BResp[VideoInfo], error)

type Badge

type Badge struct {
	BgColor string      `json:"bg_color"`
	Color   string      `json:"color"`
	IconURL interface{} `json:"icon_url"`
	Text    string      `json:"text"`
}

type Basic

type Basic struct {
	CommentIDStr string         `json:"comment_id_str"`
	CommentType  int64          `json:"comment_type"`
	LikeIcon     PurpleLikeIcon `json:"like_icon"`
	RidStr       string         `json:"rid_str"`
}

type CoinVideo

type CoinVideo struct {
	Aid        int64     `json:"aid"`
	Attribute  int64     `json:"attribute"`
	Bvid       string    `json:"bvid"`
	Cid        int64     `json:"cid"`
	Coins      int64     `json:"coins"`
	Copyright  int64     `json:"copyright"`
	Ctime      int64     `json:"ctime"`
	Desc       string    `json:"desc"`
	Dimension  Dimension `json:"dimension"`
	Duration   int64     `json:"duration"`
	Dynamic    string    `json:"dynamic"`
	InterVideo bool      `json:"inter_video"`
	IP         string    `json:"ip"`
	MissionID  int64     `json:"mission_id"`
	Owner      Owner     `json:"owner"`
	Pic        string    `json:"pic"`
	Pubdate    int64     `json:"pubdate"`
	Rights     Rights    `json:"rights"`
	Stat       Stat      `json:"stat"`
	State      int64     `json:"state"`
	Tid        int64     `json:"tid"`
	Time       int64     `json:"time"`
	Title      string    `json:"title"`
	Tname      string    `json:"tname"`
	Videos     int64     `json:"videos"`
}

type Comment

type Comment struct {
	Count     int64 `json:"count"`
	Forbidden bool  `json:"forbidden"`
}

type Cursor

type Cursor struct {
	Business string `json:"business"`
	Max      int64  `json:"max"`
	PS       int64  `json:"ps"`
	ViewAt   int64  `json:"view_at"`
}

type DataItem

type DataItem struct {
	Basic Basic  `json:"basic"`
	IDStr string `json:"id_str"`
	// Modules Modules `json:"modules"`
	Orig    Orig   `json:"orig"`
	Type    string `json:"type"`
	Visible bool   `json:"visible"`
}

type Dimension

type Dimension struct {
	Height int64 `json:"height"`
	Rotate int64 `json:"rotate"`
	Width  int64 `json:"width"`
}

type Fav

type Fav struct {
	HasMore bool    `json:"has_more"`
	Info    Info    `json:"info"`
	Medias  []Media `json:"medias"`
	TTL     int64   `json:"ttl"`
}

type FavFolder

type FavFolder struct {
	Count  int64       `json:"count"`
	List   []Folder    `json:"list"`
	Season interface{} `json:"season"`
}

type FluffyAvatar

type FluffyAvatar struct {
	ContainerSize  FluffyContainerSize  `json:"container_size"`
	FallbackLayers FluffyFallbackLayers `json:"fallback_layers"`
	Mid            string               `json:"mid"`
}

type FluffyContainerSize

type FluffyContainerSize struct {
	Height float64 `json:"height"`
	Width  float64 `json:"width"`
}

type FluffyDesc

type FluffyDesc struct {
	RichTextNodes []FluffyRichTextNode `json:"rich_text_nodes"`
	Text          string               `json:"text"`
}

type FluffyFallbackLayers

type FluffyFallbackLayers struct {
	IsCriticalGroup bool          `json:"is_critical_group"`
	Layers          []FluffyLayer `json:"layers"`
}

type FluffyGENERALCFG

type FluffyGENERALCFG struct {
	ConfigType    int64               `json:"config_type"`
	GeneralConfig FluffyGeneralConfig `json:"general_config"`
}

type FluffyGeneralConfig

type FluffyGeneralConfig struct {
	WebCSSStyle FluffyWebCSSStyle `json:"web_css_style"`
}

type FluffyGeneralSpec

type FluffyGeneralSpec struct {
	PosSpec    FluffyPosSpec    `json:"pos_spec"`
	RenderSpec FluffyRenderSpec `json:"render_spec"`
	SizeSpec   FluffySizeSpec   `json:"size_spec"`
}

type FluffyImageSrc

type FluffyImageSrc struct {
	Local       int64         `json:"local"`
	Placeholder *int64        `json:"placeholder,omitempty"`
	Remote      *FluffyRemote `json:"remote,omitempty"`
	SrcType     int64         `json:"src_type"`
}

type FluffyLabel

type FluffyLabel struct {
	BgColor               string `json:"bg_color"`
	BgStyle               int64  `json:"bg_style"`
	BorderColor           string `json:"border_color"`
	ImgLabelURIHans       string `json:"img_label_uri_hans"`
	ImgLabelURIHansStatic string `json:"img_label_uri_hans_static"`
	ImgLabelURIHant       string `json:"img_label_uri_hant"`
	ImgLabelURIHantStatic string `json:"img_label_uri_hant_static"`
	LabelTheme            string `json:"label_theme"`
	Path                  string `json:"path"`
	Text                  string `json:"text"`
	TextColor             string `json:"text_color"`
	UseImgLabel           bool   `json:"use_img_label"`
}

type FluffyLayer

type FluffyLayer struct {
	GeneralSpec FluffyGeneralSpec `json:"general_spec"`
	LayerConfig FluffyLayerConfig `json:"layer_config"`
	Resource    FluffyResource    `json:"resource"`
	Visible     bool              `json:"visible"`
}

type FluffyLayerConfig

type FluffyLayerConfig struct {
	IsCritical *bool      `json:"is_critical,omitempty"`
	Tags       FluffyTags `json:"tags"`
}

type FluffyLikeIcon

type FluffyLikeIcon struct {
	ActionURL string `json:"action_url"`
	EndURL    string `json:"end_url"`
	ID        int64  `json:"id"`
	StartURL  string `json:"start_url"`
}

type FluffyModuleAuthor

type FluffyModuleAuthor struct {
	Avatar         FluffyAvatar         `json:"avatar"`
	Face           string               `json:"face"`
	FaceNft        bool                 `json:"face_nft"`
	Following      interface{}          `json:"following"`
	JumpURL        string               `json:"jump_url"`
	Label          string               `json:"label"`
	Mid            int64                `json:"mid"`
	Name           string               `json:"name"`
	OfficialVerify FluffyOfficialVerify `json:"official_verify"`
	Pendant        FluffyPendant        `json:"pendant"`
	PubAction      string               `json:"pub_action"`
	PubTime        string               `json:"pub_time"`
	PubTs          int64                `json:"pub_ts"`
	Type           string               `json:"type"`
	Vip            FluffyVip            `json:"vip"`
}

type FluffyModuleDynamic

type FluffyModuleDynamic struct {
	Additional interface{} `json:"additional"`
	Desc       FluffyDesc  `json:"desc"`
	Major      Major       `json:"major"`
	Topic      interface{} `json:"topic"`
}

type FluffyOfficialVerify

type FluffyOfficialVerify struct {
	Desc string `json:"desc"`
	Type int64  `json:"type"`
}

type FluffyPendant

type FluffyPendant struct {
	Expire            int64  `json:"expire"`
	Image             string `json:"image"`
	ImageEnhance      string `json:"image_enhance"`
	ImageEnhanceFrame string `json:"image_enhance_frame"`
	NPID              int64  `json:"n_pid"`
	Name              string `json:"name"`
	PID               int64  `json:"pid"`
}

type FluffyPosSpec

type FluffyPosSpec struct {
	AxisX         float64 `json:"axis_x"`
	AxisY         float64 `json:"axis_y"`
	CoordinatePos int64   `json:"coordinate_pos"`
}

type FluffyRemote

type FluffyRemote struct {
	BFSStyle string `json:"bfs_style"`
	URL      string `json:"url"`
}

type FluffyRenderSpec

type FluffyRenderSpec struct {
	Opacity int64 `json:"opacity"`
}

type FluffyResImage

type FluffyResImage struct {
	ImageSrc FluffyImageSrc `json:"image_src"`
}

type FluffyResource

type FluffyResource struct {
	ResImage FluffyResImage `json:"res_image"`
	ResType  int64          `json:"res_type"`
}

type FluffyRichTextNode

type FluffyRichTextNode struct {
	JumpURL  string `json:"jump_url"`
	OrigText string `json:"orig_text"`
	Text     string `json:"text"`
	Type     string `json:"type"`
}

type FluffySizeSpec

type FluffySizeSpec struct {
	Height *Height `json:"height"`
	Width  *Height `json:"width"`
}

type FluffyTags

type FluffyTags struct {
	AvatarLayer map[string]interface{} `json:"AVATAR_LAYER,omitempty"`
	GeneralCFG  FluffyGENERALCFG       `json:"GENERAL_CFG"`
	IconLayer   map[string]interface{} `json:"ICON_LAYER"`
}

type FluffyVip

type FluffyVip struct {
	AvatarSubscript    int64       `json:"avatar_subscript"`
	AvatarSubscriptURL string      `json:"avatar_subscript_url"`
	DueDate            int64       `json:"due_date"`
	Label              FluffyLabel `json:"label"`
	NicknameColor      string      `json:"nickname_color"`
	Status             int64       `json:"status"`
	ThemeType          int64       `json:"theme_type"`
	Type               int64       `json:"type"`
}

type FluffyWebCSSStyle

type FluffyWebCSSStyle struct {
	BackgroundColor string `json:"background-color"`
	Border          string `json:"border"`
	BorderRadius    string `json:"borderRadius"`
	BoxSizing       string `json:"boxSizing"`
}

type Folder

type Folder struct {
	Attr       int64  `json:"attr"`
	FavState   int64  `json:"fav_state"`
	Fid        int64  `json:"fid"`
	ID         int64  `json:"id"`
	MediaCount int64  `json:"media_count"`
	Mid        int64  `json:"mid"`
	Title      string `json:"title"`
}

type Forward

type Forward struct {
	Count     int64 `json:"count"`
	Forbidden bool  `json:"forbidden"`
}

type GenerateQrCodeResp

type GenerateQrCodeResp struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	TTL     int    `json:"ttl"`
	Data    struct {
		URL       string `json:"url"`
		QrcodeKey string `json:"qrcode_key"`
	} `json:"data"`
}

type Height

type Height struct {
	Double  *float64
	Integer *int64
}

type Histories

type Histories struct {
	Cursor Cursor `json:"cursor"`
	List   []List `json:"list"`
	Tab    []Tab  `json:"tab"`
}

type History

type History struct {
	Business string `json:"business"`
	Bvid     string `json:"bvid"`
	Cid      int64  `json:"cid"`
	Dt       int64  `json:"dt"`
	Epid     int64  `json:"epid"`
	OID      int64  `json:"oid"`
	Page     int64  `json:"page"`
	Part     string `json:"part"`
}

type Info

type Info struct {
	Attr       int64       `json:"attr"`
	CntInfo    InfoCntInfo `json:"cnt_info"`
	Cover      string      `json:"cover"`
	CoverType  int64       `json:"cover_type"`
	Ctime      int64       `json:"ctime"`
	FavState   int64       `json:"fav_state"`
	Fid        int64       `json:"fid"`
	ID         int64       `json:"id"`
	Intro      string      `json:"intro"`
	LikeState  int64       `json:"like_state"`
	MediaCount int64       `json:"media_count"`
	Mid        int64       `json:"mid"`
	Mtime      int64       `json:"mtime"`
	State      int64       `json:"state"`
	Title      string      `json:"title"`
	Type       int64       `json:"type"`
	Upper      InfoUpper   `json:"upper"`
}

type InfoCntInfo

type InfoCntInfo struct {
	Collect int64 `json:"collect"`
	Play    int64 `json:"play"`
	Share   int64 `json:"share"`
	ThumbUp int64 `json:"thumb_up"`
}

type InfoUpper

type InfoUpper struct {
	Face      string `json:"face"`
	Followed  bool   `json:"followed"`
	Mid       int64  `json:"mid"`
	Name      string `json:"name"`
	VipStatue int64  `json:"vip_statue"`
	VipType   int64  `json:"vip_type"`
}

type Label

type Label struct {
	BgColor     string `json:"bg_color"`
	BgStyle     int64  `json:"bg_style"`
	BorderColor string `json:"border_color"`
	LabelTheme  string `json:"label_theme"`
	Path        string `json:"path"`
	Text        string `json:"text"`
	TextColor   string `json:"text_color"`
}

type Like

type Like struct {
	Count     int64 `json:"count"`
	Forbidden bool  `json:"forbidden"`
	Status    bool  `json:"status"`
}

type LikedVideo

type LikedVideo struct {
	List []Video `json:"list"`
}

type List

type List struct {
	AuthorFace string      `json:"author_face"`
	AuthorMid  int64       `json:"author_mid"`
	AuthorName string      `json:"author_name"`
	Badge      string      `json:"badge"`
	Cover      string      `json:"cover"`
	Covers     interface{} `json:"covers"`
	Current    string      `json:"current"`
	Duration   int64       `json:"duration"`
	History    History     `json:"history"`
	IsFav      int64       `json:"is_fav"`
	IsFinish   int64       `json:"is_finish"`
	Kid        int64       `json:"kid"`
	LiveStatus int64       `json:"live_status"`
	LongTitle  string      `json:"long_title"`
	NewDesc    string      `json:"new_desc"`
	Progress   int64       `json:"progress"`
	ShowTitle  string      `json:"show_title"`
	TagName    string      `json:"tag_name"`
	Title      string      `json:"title"`
	Total      int64       `json:"total"`
	URI        string      `json:"uri"`
	Videos     int64       `json:"videos"`
	ViewAt     int64       `json:"view_at"`
}

type Live

type Live struct {
	JumpURL    string `json:"jump_url"`
	LiveStatus int64  `json:"live_status"`
}

type LoginResp

type LoginResp struct {
	LoginStatus LoginStatus
	Cookie      []string
}

type Major

type Major struct {
	Archive Archive `json:"archive"`
	Type    string  `json:"type"`
}

type Media

type Media struct {
	Attr     int64        `json:"attr"`
	BvID     string       `json:"bv_id"`
	Bvid     string       `json:"bvid"`
	CntInfo  MediaCntInfo `json:"cnt_info"`
	Cover    string       `json:"cover"`
	Ctime    int64        `json:"ctime"`
	Duration int64        `json:"duration"`
	FavTime  int64        `json:"fav_time"`
	ID       int64        `json:"id"`
	Intro    string       `json:"intro"`
	Link     string       `json:"link"`
	Page     int64        `json:"page"`
	Pubtime  int64        `json:"pubtime"`
	Season   interface{}  `json:"season"`
	Title    string       `json:"title"`
	Type     int64        `json:"type"`
	Upper    MediaUpper   `json:"upper"`
}

type MediaCntInfo

type MediaCntInfo struct {
	Collect int64 `json:"collect"`
	Danmaku int64 `json:"danmaku"`
	Play    int64 `json:"play"`
}

type MediaUpper

type MediaUpper struct {
	Face string `json:"face"`
	Mid  int64  `json:"mid"`
	Name string `json:"name"`
}
type Modal struct {
	Cancel  string `json:"cancel"`
	Confirm string `json:"confirm"`
	Content string `json:"content"`
	Title   string `json:"title"`
}

type ModuleMore

type ModuleMore struct {
	ThreePointItems []ThreePointItem `json:"three_point_items"`
}

type ModuleStat

type ModuleStat struct {
	Comment Comment `json:"comment"`
	Forward Forward `json:"forward"`
	Like    Like    `json:"like"`
}

type ModuleTag

type ModuleTag struct {
	Text string `json:"text"`
}

type Modules

type Modules struct {
	ModuleAuthor  PurpleModuleAuthor  `json:"module_author"`
	ModuleDynamic PurpleModuleDynamic `json:"module_dynamic"`
	ModuleMore    ModuleMore          `json:"module_more"`
	ModuleStat    ModuleStat          `json:"module_stat"`
	ModuleTag     ModuleTag           `json:"module_tag"`
}

type MySpaceInfoResp

type MySpaceInfoResp struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	TTL     int    `json:"ttl"`
	Data    struct {
		Mid            int    `json:"mid"`
		Name           string `json:"name"`
		Sex            string `json:"sex"`
		Face           string `json:"face"`
		Sign           string `json:"sign"`
		Rank           int    `json:"rank"`
		Level          int    `json:"level"`
		Jointime       int    `json:"jointime"`
		Moral          int    `json:"moral"`
		Silence        int    `json:"silence"`
		EmailStatus    int    `json:"email_status"`
		TelStatus      int    `json:"tel_status"`
		Identification int    `json:"identification"`
		Vip            struct {
			Type       int   `json:"type"`
			Status     int   `json:"status"`
			DueDate    int64 `json:"due_date"`
			VipPayType int   `json:"vip_pay_type"`
			ThemeType  int   `json:"theme_type"`
			Label      struct {
				Path                  string `json:"path"`
				Text                  string `json:"text"`
				LabelTheme            string `json:"label_theme"`
				TextColor             string `json:"text_color"`
				BgStyle               int    `json:"bg_style"`
				BgColor               string `json:"bg_color"`
				BorderColor           string `json:"border_color"`
				UseImgLabel           bool   `json:"use_img_label"`
				ImgLabelURIHans       string `json:"img_label_uri_hans"`
				ImgLabelURIHant       string `json:"img_label_uri_hant"`
				ImgLabelURIHansStatic string `json:"img_label_uri_hans_static"`
				ImgLabelURIHantStatic string `json:"img_label_uri_hant_static"`
			} `json:"label"`
			AvatarSubscript    int    `json:"avatar_subscript"`
			NicknameColor      string `json:"nickname_color"`
			Role               int    `json:"role"`
			AvatarSubscriptURL string `json:"avatar_subscript_url"`
			TvVipStatus        int    `json:"tv_vip_status"`
			TvVipPayType       int    `json:"tv_vip_pay_type"`
		} `json:"vip"`
		Pendant struct {
			Pid               int    `json:"pid"`
			Name              string `json:"name"`
			Image             string `json:"image"`
			Expire            int    `json:"expire"`
			ImageEnhance      string `json:"image_enhance"`
			ImageEnhanceFrame string `json:"image_enhance_frame"`
		} `json:"pendant"`
		Nameplate struct {
			Nid        int    `json:"nid"`
			Name       string `json:"name"`
			Image      string `json:"image"`
			ImageSmall string `json:"image_small"`
			Level      string `json:"level"`
			Condition  string `json:"condition"`
		} `json:"nameplate"`
		Official struct {
			Role  int    `json:"role"`
			Title string `json:"title"`
			Desc  string `json:"desc"`
			Type  int    `json:"type"`
		} `json:"official"`
		Birthday      int  `json:"birthday"`
		IsTourist     int  `json:"is_tourist"`
		IsFakeAccount int  `json:"is_fake_account"`
		PinPrompting  int  `json:"pin_prompting"`
		IsDeleted     int  `json:"is_deleted"`
		InRegAudit    int  `json:"in_reg_audit"`
		IsRipUser     bool `json:"is_rip_user"`
		Profession    struct {
			ID          int    `json:"id"`
			Name        string `json:"name"`
			ShowName    string `json:"show_name"`
			IsShow      int    `json:"is_show"`
			CategoryOne string `json:"category_one"`
			Realname    string `json:"realname"`
			Title       string `json:"title"`
			Department  string `json:"department"`
		} `json:"profession"`
		FaceNft        int `json:"face_nft"`
		FaceNftNew     int `json:"face_nft_new"`
		IsSeniorMember int `json:"is_senior_member"`
		Honours        struct {
			Mid    int `json:"mid"`
			Colour struct {
				Dark   string `json:"dark"`
				Normal string `json:"normal"`
			} `json:"colour"`
			Tags interface{} `json:"tags"`
		} `json:"honours"`
		DigitalID   string `json:"digital_id"`
		DigitalType int    `json:"digital_type"`
		LevelExp    struct {
			CurrentLevel int   `json:"current_level"`
			CurrentMin   int   `json:"current_min"`
			CurrentExp   int   `json:"current_exp"`
			NextExp      int   `json:"next_exp"`
			LevelUp      int64 `json:"level_up"`
		} `json:"level_exp"`
		Coins     float64 `json:"coins"`
		Following int     `json:"following"`
		Follower  int     `json:"follower"`
	} `json:"data"`
}
type NavInfoResp struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	TTL     int    `json:"ttl"`
	Data    struct {
		IsLogin bool `json:"isLogin"`
	} `json:"data"`
}

type OfficialVerify

type OfficialVerify struct {
	Desc string `json:"desc"`
	Type int64  `json:"type"`
}

type Orig

type Orig struct {
	Modules OrigModules `json:"modules"`
}

type OrigBasic

type OrigBasic struct {
	CommentIDStr string         `json:"comment_id_str"`
	CommentType  int64          `json:"comment_type"`
	LikeIcon     FluffyLikeIcon `json:"like_icon"`
	RidStr       string         `json:"rid_str"`
}

type OrigModules

type OrigModules struct {
	ModuleDynamic FluffyModuleDynamic `json:"module_dynamic"`
}

type Owner

type Owner struct {
	Face string `json:"face"`
	Mid  int64  `json:"mid"`
	Name string `json:"name"`
}

type Params

type Params struct {
	DynamicID string `json:"dynamic_id"`
	Status    bool   `json:"status"`
}

type PlayUrl

type PlayUrl struct {
	From              string   `json:"from"`
	Result            string   `json:"result"`
	Message           string   `json:"message"`
	Quality           int      `json:"quality"`
	Format            string   `json:"format"`
	Timelength        int      `json:"timelength"`
	AcceptFormat      string   `json:"accept_format"`
	AcceptDescription []string `json:"accept_description"`
	AcceptQuality     []int    `json:"accept_quality"`
	VideoCodecid      int      `json:"video_codecid"`
	SeekParam         string   `json:"seek_param"`
	SeekType          string   `json:"seek_type"`
	Durl              []struct {
		Order     int      `json:"order"`
		Length    int      `json:"length"`
		Size      int      `json:"size"`
		Ahead     string   `json:"ahead"`
		Vhead     string   `json:"vhead"`
		URL       string   `json:"url"`
		BackupURL []string `json:"backup_url"`
	} `json:"durl"`
	Dash struct {
		Duration      int     `json:"duration"`
		MinBufferTime float64 `json:"min_buffer_time"`
		Video         []struct {
			ID           int      `json:"id"`
			BaseURL      string   `json:"base_url"`
			BackupURL    []string `json:"backup_url"`
			Bandwidth    int      `json:"bandwidth"`
			MimeType     string   `json:"mime_type"`
			Codecs       string   `json:"codecs"`
			Width        int      `json:"width"`
			Height       int      `json:"height"`
			FrameRate    string   `json:"frame_rate"`
			Sar          string   `json:"sar"`
			StartWithSap int      `json:"start_with_sap"`
			SegmentBase  struct {
				Initialization string `json:"initialization"`
				IndexRange     string `json:"index_range"`
			} `json:"segment_base"`
			Codecid int `json:"codecid"`
		} `json:"video"`
		Audio []struct {
			ID           int      `json:"id"`
			BaseURL      string   `json:"base_url"`
			BackupURL    []string `json:"backup_url"`
			Bandwidth    int      `json:"bandwidth"`
			MimeType     string   `json:"mime_type"`
			Codecs       string   `json:"codecs"`
			Width        int      `json:"width"`
			Height       int      `json:"height"`
			FrameRate    string   `json:"frame_rate"`
			Sar          string   `json:"sar"`
			StartWithSap int      `json:"start_with_sap"`
			SegmentBase  struct {
				Initialization string `json:"initialization"`
				IndexRange     string `json:"index_range"`
			} `json:"segment_base"`
			Codecid int `json:"codecid"`
		} `json:"audio"`
		Dolby struct {
			Type  int         `json:"type"`
			Audio interface{} `json:"audio"`
		} `json:"dolby"`
		Flac interface{} `json:"flac"`
	} `json:"dash"`
	SupportFormats []struct {
		Quality        int         `json:"quality"`
		Format         string      `json:"format"`
		NewDescription string      `json:"new_description"`
		DisplayDesc    string      `json:"display_desc"`
		Superscript    string      `json:"superscript"`
		Codecs         interface{} `json:"codecs"`
	} `json:"support_formats"`
	HighFormat   interface{} `json:"high_format"`
	LastPlayTime int         `json:"last_play_time"`
	LastPlayCid  int         `json:"last_play_cid"`
}

type PollQrCodeResp

type PollQrCodeResp struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	TTL     int    `json:"ttl"`
	Data    struct {
		URL          string `json:"url"`
		RefreshToken string `json:"refresh_token"`
		Timestamp    int    `json:"timestamp"`
		Code         int    `json:"code"`
		Message      string `json:"message"`
	} `json:"data"`
}

type PurpleAvatar

type PurpleAvatar struct {
	ContainerSize  PurpleContainerSize  `json:"container_size"`
	FallbackLayers PurpleFallbackLayers `json:"fallback_layers"`
	Mid            string               `json:"mid"`
}

type PurpleContainerSize

type PurpleContainerSize struct {
	Height float64 `json:"height"`
	Width  float64 `json:"width"`
}

type PurpleDesc

type PurpleDesc struct {
	RichTextNodes []PurpleRichTextNode `json:"rich_text_nodes"`
	Text          string               `json:"text"`
}

type PurpleFallbackLayers

type PurpleFallbackLayers struct {
	IsCriticalGroup bool          `json:"is_critical_group"`
	Layers          []PurpleLayer `json:"layers"`
}

type PurpleGENERALCFG

type PurpleGENERALCFG struct {
	ConfigType    int64               `json:"config_type"`
	GeneralConfig PurpleGeneralConfig `json:"general_config"`
}

type PurpleGeneralConfig

type PurpleGeneralConfig struct {
	WebCSSStyle PurpleWebCSSStyle `json:"web_css_style"`
}

type PurpleImageSrc

type PurpleImageSrc struct {
	Local       int64         `json:"local"`
	Placeholder *int64        `json:"placeholder,omitempty"`
	Remote      *PurpleRemote `json:"remote,omitempty"`
	SrcType     int64         `json:"src_type"`
}

type PurpleLabel

type PurpleLabel struct {
	BgColor               string `json:"bg_color"`
	BgStyle               int64  `json:"bg_style"`
	BorderColor           string `json:"border_color"`
	ImgLabelURIHans       string `json:"img_label_uri_hans"`
	ImgLabelURIHansStatic string `json:"img_label_uri_hans_static"`
	ImgLabelURIHant       string `json:"img_label_uri_hant"`
	ImgLabelURIHantStatic string `json:"img_label_uri_hant_static"`
	LabelTheme            string `json:"label_theme"`
	Path                  string `json:"path"`
	Text                  string `json:"text"`
	TextColor             string `json:"text_color"`
	UseImgLabel           bool   `json:"use_img_label"`
}

type PurpleLayer

type PurpleLayer struct {
	LayerConfig PurpleLayerConfig `json:"layer_config"`
	Resource    PurpleResource    `json:"resource"`
	Visible     bool              `json:"visible"`
}

type PurpleLayerConfig

type PurpleLayerConfig struct {
	IsCritical *bool      `json:"is_critical,omitempty"`
	Tags       PurpleTags `json:"tags"`
}

type PurpleLikeIcon

type PurpleLikeIcon struct {
	ActionURL string `json:"action_url"`
	EndURL    string `json:"end_url"`
	ID        int64  `json:"id"`
	StartURL  string `json:"start_url"`
}

type PurpleModuleAuthor

type PurpleModuleAuthor struct {
	Avatar          PurpleAvatar         `json:"avatar"`
	Face            string               `json:"face"`
	FaceNft         bool                 `json:"face_nft"`
	Following       interface{}          `json:"following"`
	JumpURL         string               `json:"jump_url"`
	Label           string               `json:"label"`
	Mid             int64                `json:"mid"`
	Name            string               `json:"name"`
	OfficialVerify  PurpleOfficialVerify `json:"official_verify"`
	Pendant         PurplePendant        `json:"pendant"`
	PubAction       string               `json:"pub_action"`
	PubLocationText string               `json:"pub_location_text"`
	PubTime         string               `json:"pub_time"`
	PubTs           int64                `json:"pub_ts"`
	Type            string               `json:"type"`
	Vip             PurpleVip            `json:"vip"`
}

type PurpleModuleDynamic

type PurpleModuleDynamic struct {
	Additional interface{} `json:"additional"`
	Desc       PurpleDesc  `json:"desc"`
	Major      interface{} `json:"major"`
	Topic      interface{} `json:"topic"`
}

type PurpleOfficialVerify

type PurpleOfficialVerify struct {
	Desc string `json:"desc"`
	Type int64  `json:"type"`
}

type PurplePendant

type PurplePendant struct {
	Expire            int64  `json:"expire"`
	Image             string `json:"image"`
	ImageEnhance      string `json:"image_enhance"`
	ImageEnhanceFrame string `json:"image_enhance_frame"`
	NPID              int64  `json:"n_pid"`
	Name              string `json:"name"`
	PID               int64  `json:"pid"`
}

type PurpleRemote

type PurpleRemote struct {
	BFSStyle string `json:"bfs_style"`
	URL      string `json:"url"`
}

type PurpleRenderSpec

type PurpleRenderSpec struct {
	Opacity int64 `json:"opacity"`
}

type PurpleResImage

type PurpleResImage struct {
	ImageSrc PurpleImageSrc `json:"image_src"`
}

type PurpleResource

type PurpleResource struct {
	ResImage PurpleResImage `json:"res_image"`
	ResType  int64          `json:"res_type"`
}

type PurpleRichTextNode

type PurpleRichTextNode struct {
	OrigText *string `json:"orig_text,omitempty"`
	Text     *string `json:"text,omitempty"`
	Type     *string `json:"type,omitempty"`
}

type PurpleSizeSpec

type PurpleSizeSpec struct {
	Height *Height `json:"height"`
	Width  *Height `json:"width"`
}

type PurpleTags

type PurpleTags struct {
	AvatarLayer map[string]interface{} `json:"AVATAR_LAYER,omitempty"`
	GeneralCFG  PurpleGENERALCFG       `json:"GENERAL_CFG"`
	IconLayer   map[string]interface{} `json:"ICON_LAYER"`
}

type PurpleVip

type PurpleVip struct {
	AvatarSubscript    int64       `json:"avatar_subscript"`
	AvatarSubscriptURL string      `json:"avatar_subscript_url"`
	DueDate            int64       `json:"due_date"`
	Label              PurpleLabel `json:"label"`
	NicknameColor      string      `json:"nickname_color"`
	Status             int64       `json:"status"`
	ThemeType          int64       `json:"theme_type"`
	Type               int64       `json:"type"`
}

type PurpleWebCSSStyle

type PurpleWebCSSStyle struct {
	BackgroundColor string `json:"background-color"`
	Border          string `json:"border"`
	BorderRadius    string `json:"borderRadius"`
	BoxSizing       string `json:"boxSizing"`
}

type Rights

type Rights struct {
	ArcPay        int64 `json:"arc_pay"`
	Autoplay      int64 `json:"autoplay"`
	Bp            int64 `json:"bp"`
	Download      int64 `json:"download"`
	Elec          int64 `json:"elec"`
	Hd5           int64 `json:"hd5"`
	IsCooperation int64 `json:"is_cooperation"`
	Movie         int64 `json:"movie"`
	NoBackground  int64 `json:"no_background"`
	NoReprint     int64 `json:"no_reprint"`
	Pay           int64 `json:"pay"`
	PayFreeWatch  int64 `json:"pay_free_watch"`
	UgcPay        int64 `json:"ugc_pay"`
	UgcPayPreview int64 `json:"ugc_pay_preview"`
}

type SeasonInfo

type SeasonInfo struct {
	Activity struct {
		HeadBgURL string `json:"head_bg_url"`
		ID        int    `json:"id"`
		Title     string `json:"title"`
	} `json:"activity"`
	Alias string `json:"alias"`
	Areas []struct {
		ID   int    `json:"id"`
		Name string `json:"name"`
	} `json:"areas"`
	BkgCover string `json:"bkg_cover"`
	Cover    string `json:"cover"`
	Episodes []struct {
		Aid       int    `json:"aid"`
		Badge     string `json:"badge"`
		BadgeInfo struct {
			BgColor      string `json:"bg_color"`
			BgColorNight string `json:"bg_color_night"`
			Text         string `json:"text"`
		} `json:"badge_info"`
		BadgeType int    `json:"badge_type"`
		Bvid      string `json:"bvid"`
		Cid       int    `json:"cid"`
		Cover     string `json:"cover"`
		Dimension struct {
			Height int `json:"height"`
			Rotate int `json:"rotate"`
			Width  int `json:"width"`
		} `json:"dimension"`
		Duration    int    `json:"duration"`
		From        string `json:"from"`
		ID          int    `json:"id"`
		IsViewHide  bool   `json:"is_view_hide"`
		Link        string `json:"link"`
		LongTitle   string `json:"long_title"`
		PubTime     int    `json:"pub_time"`
		Pv          int    `json:"pv"`
		ReleaseDate string `json:"release_date"`
		Rights      struct {
			AllowDemand   int `json:"allow_demand"`
			AllowDm       int `json:"allow_dm"`
			AllowDownload int `json:"allow_download"`
			AreaLimit     int `json:"area_limit"`
		} `json:"rights"`
		ShareCopy string `json:"share_copy"`
		ShareURL  string `json:"share_url"`
		ShortLink string `json:"short_link"`
		Skip      struct {
			Ed struct {
				End   int `json:"end"`
				Start int `json:"start"`
			} `json:"ed"`
			Op struct {
				End   int `json:"end"`
				Start int `json:"start"`
			} `json:"op"`
		} `json:"skip"`
		Status   int    `json:"status"`
		Subtitle string `json:"subtitle"`
		Title    string `json:"title"`
		Vid      string `json:"vid"`
	} `json:"episodes"`
	Evaluate string `json:"evaluate"`
	Freya    struct {
		BubbleDesc    string `json:"bubble_desc"`
		BubbleShowCnt int    `json:"bubble_show_cnt"`
		IconShow      int    `json:"icon_show"`
	} `json:"freya"`
	JpTitle string `json:"jp_title"`
	Link    string `json:"link"`
	MediaID int    `json:"media_id"`
	Mode    int    `json:"mode"`
	NewEp   struct {
		Desc  string `json:"desc"`
		ID    int    `json:"id"`
		IsNew int    `json:"is_new"`
		Title string `json:"title"`
	} `json:"new_ep"`
	Positive struct {
		ID    int    `json:"id"`
		Title string `json:"title"`
	} `json:"positive"`
	Publish struct {
		IsFinish      int    `json:"is_finish"`
		IsStarted     int    `json:"is_started"`
		PubTime       string `json:"pub_time"`
		PubTimeShow   string `json:"pub_time_show"`
		UnknowPubDate int    `json:"unknow_pub_date"`
		Weekday       int    `json:"weekday"`
	} `json:"publish"`
	Rating struct {
		Count int     `json:"count"`
		Score float64 `json:"score"`
	} `json:"rating"`
	Record string `json:"record"`
	Rights struct {
		AllowBp         int    `json:"allow_bp"`
		AllowBpRank     int    `json:"allow_bp_rank"`
		AllowDownload   int    `json:"allow_download"`
		AllowReview     int    `json:"allow_review"`
		AreaLimit       int    `json:"area_limit"`
		BanAreaShow     int    `json:"ban_area_show"`
		CanWatch        int    `json:"can_watch"`
		Copyright       string `json:"copyright"`
		ForbidPre       int    `json:"forbid_pre"`
		FreyaWhite      int    `json:"freya_white"`
		IsCoverShow     int    `json:"is_cover_show"`
		IsPreview       int    `json:"is_preview"`
		OnlyVipDownload int    `json:"only_vip_download"`
		Resource        string `json:"resource"`
		WatchPlatform   int    `json:"watch_platform"`
	} `json:"rights"`
	SeasonID    int    `json:"season_id"`
	SeasonTitle string `json:"season_title"`
	Seasons     []struct {
		Badge     string `json:"badge"`
		BadgeInfo struct {
			BgColor      string `json:"bg_color"`
			BgColorNight string `json:"bg_color_night"`
			Text         string `json:"text"`
		} `json:"badge_info"`
		BadgeType           int    `json:"badge_type"`
		Cover               string `json:"cover"`
		HorizontalCover1610 string `json:"horizontal_cover_1610"`
		HorizontalCover169  string `json:"horizontal_cover_169"`
		MediaID             int    `json:"media_id"`
		NewEp               struct {
			Cover     string `json:"cover"`
			ID        int    `json:"id"`
			IndexShow string `json:"index_show"`
		} `json:"new_ep"`
		SeasonID    int    `json:"season_id"`
		SeasonTitle string `json:"season_title"`
		SeasonType  int    `json:"season_type"`
		Stat        struct {
			Favorites    int `json:"favorites"`
			SeriesFollow int `json:"series_follow"`
			Views        int `json:"views"`
		} `json:"stat"`
	} `json:"seasons"`
	Section []struct {
		Attr       int           `json:"attr"`
		EpisodeID  int           `json:"episode_id"`
		EpisodeIds []interface{} `json:"episode_ids"`
		Episodes   []struct {
			Aid       int    `json:"aid"`
			Badge     string `json:"badge"`
			BadgeInfo struct {
				BgColor      string `json:"bg_color"`
				BgColorNight string `json:"bg_color_night"`
				Text         string `json:"text"`
			} `json:"badge_info"`
			BadgeType int    `json:"badge_type"`
			Bvid      string `json:"bvid"`
			Cid       int    `json:"cid"`
			Cover     string `json:"cover"`
			Dimension struct {
				Height int `json:"height"`
				Rotate int `json:"rotate"`
				Width  int `json:"width"`
			} `json:"dimension"`
			Duration    int    `json:"duration"`
			From        string `json:"from"`
			ID          int    `json:"id"`
			IsViewHide  bool   `json:"is_view_hide"`
			Link        string `json:"link"`
			LongTitle   string `json:"long_title"`
			PubTime     int    `json:"pub_time"`
			Pv          int    `json:"pv"`
			ReleaseDate string `json:"release_date"`
			Rights      struct {
				AllowDemand   int `json:"allow_demand"`
				AllowDm       int `json:"allow_dm"`
				AllowDownload int `json:"allow_download"`
				AreaLimit     int `json:"area_limit"`
			} `json:"rights"`
			ShareCopy string `json:"share_copy"`
			ShareURL  string `json:"share_url"`
			ShortLink string `json:"short_link"`
			Skip      struct {
				Ed struct {
					End   int `json:"end"`
					Start int `json:"start"`
				} `json:"ed"`
				Op struct {
					End   int `json:"end"`
					Start int `json:"start"`
				} `json:"op"`
			} `json:"skip"`
			Stat struct {
				Coin     int `json:"coin"`
				Danmakus int `json:"danmakus"`
				Likes    int `json:"likes"`
				Play     int `json:"play"`
				Reply    int `json:"reply"`
			} `json:"stat"`
			Status   int    `json:"status"`
			Subtitle string `json:"subtitle"`
			Title    string `json:"title"`
			Vid      string `json:"vid"`
		} `json:"episodes"`
		ID    int    `json:"id"`
		Title string `json:"title"`
		Type  int    `json:"type"`
	} `json:"section"`
	Series struct {
		DisplayType int    `json:"display_type"`
		SeriesID    int    `json:"series_id"`
		SeriesTitle string `json:"series_title"`
	} `json:"series"`
	ShareCopy     string `json:"share_copy"`
	ShareSubTitle string `json:"share_sub_title"`
	ShareURL      string `json:"share_url"`
	Show          struct {
		WideScreen int `json:"wide_screen"`
	} `json:"show"`
	ShowSeasonType int    `json:"show_season_type"`
	SquareCover    string `json:"square_cover"`
	Stat           struct {
		Coins     int `json:"coins"`
		Danmakus  int `json:"danmakus"`
		Favorite  int `json:"favorite"`
		Favorites int `json:"favorites"`
		Likes     int `json:"likes"`
		Reply     int `json:"reply"`
		Share     int `json:"share"`
		Views     int `json:"views"`
	} `json:"stat"`
	Status   int    `json:"status"`
	Subtitle string `json:"subtitle"`
	Title    string `json:"title"`
	Total    int    `json:"total"`
	Type     int    `json:"type"`
	UpInfo   struct {
		Avatar             string `json:"avatar"`
		AvatarSubscriptURL string `json:"avatar_subscript_url"`
		Follower           int    `json:"follower"`
		IsFollow           int    `json:"is_follow"`
		Mid                int    `json:"mid"`
		NicknameColor      string `json:"nickname_color"`
		Pendant            struct {
			Image string `json:"image"`
			Name  string `json:"name"`
			Pid   int    `json:"pid"`
		} `json:"pendant"`
		ThemeType  int    `json:"theme_type"`
		Uname      string `json:"uname"`
		VerifyType int    `json:"verify_type"`
		VipLabel   struct {
			BgColor     string `json:"bg_color"`
			BgStyle     int    `json:"bg_style"`
			BorderColor string `json:"border_color"`
			Text        string `json:"text"`
			TextColor   string `json:"text_color"`
		} `json:"vip_label"`
		VipStatus int `json:"vip_status"`
		VipType   int `json:"vip_type"`
	} `json:"up_info"`
	UserStatus struct {
		AreaLimit    int `json:"area_limit"`
		BanAreaShow  int `json:"ban_area_show"`
		Follow       int `json:"follow"`
		FollowStatus int `json:"follow_status"`
		Login        int `json:"login"`
		Pay          int `json:"pay"`
		PayPackPaid  int `json:"pay_pack_paid"`
		Sponsor      int `json:"sponsor"`
	} `json:"user_status"`
}

type SpaceVideo

type SpaceVideo struct {
	HasMore        bool       `json:"has_more"`
	Items          []DataItem `json:"items"`
	Offset         string     `json:"offset"`
	UpdateBaseline string     `json:"update_baseline"`
	UpdateNum      int64      `json:"update_num"`
}

type Stat

type Stat struct {
	Aid      int64 `json:"aid"`
	Coin     int64 `json:"coin"`
	Danmaku  int64 `json:"danmaku"`
	Dislike  int64 `json:"dislike"`
	Favorite int64 `json:"favorite"`
	HisRank  int64 `json:"his_rank"`
	Like     int64 `json:"like"`
	NowRank  int64 `json:"now_rank"`
	Reply    int64 `json:"reply"`
	Share    int64 `json:"share"`
	View     int64 `json:"view"`
	VT       int64 `json:"vt"`
	Vv       int64 `json:"vv"`
}

type Tab

type Tab struct {
	Name string `json:"name"`
	Type string `json:"type"`
}

type ThreePointItem

type ThreePointItem struct {
	Label  string  `json:"label"`
	Modal  *Modal  `json:"modal,omitempty"`
	Params *Params `json:"params,omitempty"`
	Type   string  `json:"type"`
}

type UpperInfo

type UpperInfo struct {
	Attribute      int64                  `json:"attribute"`
	ContractInfo   map[string]interface{} `json:"contract_info"`
	Face           string                 `json:"face"`
	FaceNft        int64                  `json:"face_nft"`
	Live           Live                   `json:"live"`
	Mid            int64                  `json:"mid"`
	NftIcon        string                 `json:"nft_icon"`
	OfficialVerify OfficialVerify         `json:"official_verify"`
	RecReason      string                 `json:"rec_reason"`
	Sign           string                 `json:"sign"`
	Special        int64                  `json:"special"`
	Tag            interface{}            `json:"tag"`
	TrackID        string                 `json:"track_id"`
	Uname          string                 `json:"uname"`
	Vip            Vip                    `json:"vip"`
}

type UpperTag

type UpperTag struct {
	Tagid int64  `json:"tagid"`
	Name  string `json:"name"`
	Count int64  `json:"count"`
	Tip   string `json:"tip"`
}

type Video

type Video struct {
	Aid          int64     `json:"aid"`
	Bvid         string    `json:"bvid"`
	Cid          int64     `json:"cid"`
	Copyright    int64     `json:"copyright"`
	Cover43      string    `json:"cover43"`
	Ctime        int64     `json:"ctime"`
	Desc         string    `json:"desc"`
	Dimension    Dimension `json:"dimension"`
	Duration     int64     `json:"duration"`
	Dynamic      string    `json:"dynamic"`
	EnableVT     int64     `json:"enable_vt"`
	FirstFrame   string    `json:"first_frame"`
	InterVideo   bool      `json:"inter_video"`
	MissionID    int64     `json:"mission_id"`
	Owner        Owner     `json:"owner"`
	Pic          string    `json:"pic"`
	PubLocation  string    `json:"pub_location"`
	Pubdate      int64     `json:"pubdate"`
	ResourceType string    `json:"resource_type"`
	Rights       Rights    `json:"rights"`
	SeasonID     int64     `json:"season_id"`
	ShortLinkV2  string    `json:"short_link_v2"`
	Stat         Stat      `json:"stat"`
	State        int64     `json:"state"`
	Subtitle     string    `json:"subtitle"`
	Tid          int64     `json:"tid"`
	Title        string    `json:"title"`
	Tname        string    `json:"tname"`
	UpFromV2     int64     `json:"up_from_v2"`
	Videos       int64     `json:"videos"`
}

type VideoInfo

type VideoInfo struct {
	Bvid      string `json:"bvid"`
	Aid       int    `json:"aid"`
	Videos    int    `json:"videos"`
	Tid       int    `json:"tid"`
	Tname     string `json:"tname"`
	Copyright int    `json:"copyright"`
	Pic       string `json:"pic"`
	Title     string `json:"title"`
	Pubdate   int    `json:"pubdate"`
	Ctime     int    `json:"ctime"`
	Desc      string `json:"desc"`
	DescV2    []struct {
		RawText string `json:"raw_text"`
		Type    int    `json:"type"`
		BizID   int    `json:"biz_id"`
	} `json:"desc_v2"`
	State     int `json:"state"`
	Duration  int `json:"duration"`
	MissionID int `json:"mission_id"`
	Owner     struct {
		Mid  int    `json:"mid"`
		Name string `json:"name"`
		Face string `json:"face"`
	} `json:"owner"`
	Stat struct {
		Aid        int    `json:"aid"`
		View       int    `json:"view"`
		Danmaku    int    `json:"danmaku"`
		Reply      int    `json:"reply"`
		Favorite   int    `json:"favorite"`
		Coin       int    `json:"coin"`
		Share      int    `json:"share"`
		NowRank    int    `json:"now_rank"`
		HisRank    int    `json:"his_rank"`
		Like       int    `json:"like"`
		Dislike    int    `json:"dislike"`
		Evaluation string `json:"evaluation"`
		ArgueMsg   string `json:"argue_msg"`
	} `json:"stat"`
	Dynamic   string `json:"dynamic"`
	Cid       int    `json:"cid"`
	Dimension struct {
		Width  int `json:"width"`
		Height int `json:"height"`
		Rotate int `json:"rotate"`
	} `json:"dimension"`
	Premiere           interface{} `json:"premiere"`
	TeenageMode        int         `json:"teenage_mode"`
	IsChargeableSeason bool        `json:"is_chargeable_season"`
	IsStory            bool        `json:"is_story"`
	NoCache            bool        `json:"no_cache"`
	Pages              []struct {
		Cid       int    `json:"cid"`
		Page      int    `json:"page"`
		From      string `json:"from"`
		Part      string `json:"part"`
		Duration  int    `json:"duration"`
		Vid       string `json:"vid"`
		Weblink   string `json:"weblink"`
		Dimension struct {
			Width  int `json:"width"`
			Height int `json:"height"`
			Rotate int `json:"rotate"`
		} `json:"dimension"`
	} `json:"pages"`
	Subtitle struct {
		AllowSubmit bool          `json:"allow_submit"`
		List        []interface{} `json:"list"`
	} `json:"subtitle"`
	Staff []struct {
		Mid   int    `json:"mid"`
		Title string `json:"title"`
		Name  string `json:"name"`
		Face  string `json:"face"`
		Vip   struct {
			Type       int   `json:"type"`
			Status     int   `json:"status"`
			DueDate    int64 `json:"due_date"`
			VipPayType int   `json:"vip_pay_type"`
			ThemeType  int   `json:"theme_type"`
			Label      struct {
				Path                  string `json:"path"`
				Text                  string `json:"text"`
				LabelTheme            string `json:"label_theme"`
				TextColor             string `json:"text_color"`
				BgStyle               int    `json:"bg_style"`
				BgColor               string `json:"bg_color"`
				BorderColor           string `json:"border_color"`
				UseImgLabel           bool   `json:"use_img_label"`
				ImgLabelURIHans       string `json:"img_label_uri_hans"`
				ImgLabelURIHant       string `json:"img_label_uri_hant"`
				ImgLabelURIHansStatic string `json:"img_label_uri_hans_static"`
				ImgLabelURIHantStatic string `json:"img_label_uri_hant_static"`
			} `json:"label"`
			AvatarSubscript    int    `json:"avatar_subscript"`
			NicknameColor      string `json:"nickname_color"`
			Role               int    `json:"role"`
			AvatarSubscriptURL string `json:"avatar_subscript_url"`
			TvVipStatus        int    `json:"tv_vip_status"`
			TvVipPayType       int    `json:"tv_vip_pay_type"`
		} `json:"vip"`
		Official struct {
			Role  int    `json:"role"`
			Title string `json:"title"`
			Desc  string `json:"desc"`
			Type  int    `json:"type"`
		} `json:"official"`
		Follower   int `json:"follower"`
		LabelStyle int `json:"label_style"`
	} `json:"staff"`
	IsSeasonDisplay bool `json:"is_season_display"`
	UserGarb        struct {
		URLImageAniCut string `json:"url_image_ani_cut"`
	} `json:"user_garb"`
	HonorReply struct {
		Honor []struct {
			Aid                int    `json:"aid"`
			Type               int    `json:"type"`
			Desc               string `json:"desc"`
			WeeklyRecommendNum int    `json:"weekly_recommend_num"`
		} `json:"honor"`
	} `json:"honor_reply"`
	LikeIcon string `json:"like_icon"`
}

type VideoStat

type VideoStat struct {
	Danmaku string `json:"danmaku"`
	Play    string `json:"play"`
}

type Vip

type Vip struct {
	AccessStatus       int64  `json:"accessStatus"`
	AvatarSubscript    int64  `json:"avatar_subscript"`
	AvatarSubscriptURL string `json:"avatar_subscript_url"`
	DueRemark          string `json:"dueRemark"`
	Label              Label  `json:"label"`
	NicknameColor      string `json:"nickname_color"`
	ThemeType          int64  `json:"themeType"`
	VipDueDate         int64  `json:"vipDueDate"`
	VipStatus          int64  `json:"vipStatus"`
	VipStatusWarn      string `json:"vipStatusWarn"`
	VipType            int64  `json:"vipType"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL