Documentation ¶
Index ¶
- Constants
- Variables
- func ParseCookies(cookie string, v interface{}) (err error)
- type AgencyDetail
- type AlgoFilter
- type AlgoFilterParam
- type AlgoFilterResp
- type AlgoProduct
- type AlgoProductResp
- type Article
- type ArticleBase
- type ArticleCommentList
- type ArticleDetail
- type ArticleInfo
- type ArticleIntro
- type ArticleList
- type ArticlePoint
- type ArticleSimpleInfo
- type Audio
- type AudioDetail
- type AudioInfo
- type AudioInfoResp
- type AudioList
- type Banner
- type Book
- type CampHazy
- type Catalog
- type Chapter
- type CheckLoginResp
- type ClassComment
- type ClassCommentInfo
- type ClassInfo
- type ClassReviews
- type Collection
- type Comb
- type Comment
- type CommentVideo
- type Content
- type Contents
- type CookieOptions
- type CostIntro
- type Course
- type CourseCategory
- type CourseCategoryList
- type CourseInfo
- type CourseIntro
- type CourseList
- type Ddurl
- type EbookBlock
- type EbookCommentList
- type EbookDetail
- type EbookInfo
- type EbookInfoPage
- type EbookOrders
- type EbookPage
- type EbookScore
- type EbookShelfAddResp
- type EbookToc
- type EbookVIPInfo
- type FlatArticleList
- type HTab
- type HomeCategory
- type HomeData
- type HomeInitState
- type HomeModule
- type HotTab
- type Label
- type Lesson
- type LimitFree
- type Live
- type LiveActivityInfo
- type LiveArticleInfo
- type LiveBase
- type LiveBooking
- type LiveCheck
- type LiveInnerArticleInfo
- type LiveLecture
- type LiveList
- type LiveOutline
- type LivePrivilegeProduct
- type LiveTab
- type LiveTabList
- type MediaBaseInfo
- type MediaVolc
- type Navigation
- type NoteBaseSource
- type NoteCount
- type NoteDetail
- type NoteFPart
- type NoteTopic
- type NotesCount
- type NotesExtra
- type NotesList
- type NotesTimeline
- type NotesTopicInfo
- type NotesUser
- type OdobCard
- type OdobRight
- type OdobUser
- type OdobVip
- type Option
- type Press
- type ProductSimple
- type QrCodeResp
- type Quality
- type QualityUser
- type RTab
- type Rank
- type Recommend
- type ReplierInfo
- type Response
- type SearchTot
- type SelfInfo
- type Service
- func (s *Service) AlgoFilter(param AlgoFilterParam) (resp *AlgoFilterResp, err error)
- func (s *Service) AlgoProduct(param AlgoFilterParam) (resp *AlgoProductResp, err error)
- func (s *Service) ArticleCommentList(id, sort string, page, limit, sType int) (list *ArticleCommentList, err error)
- func (s *Service) ArticleDetail(token, id, appID string) (detail *ArticleDetail, err error)
- func (s *Service) ArticleInfo(enid string, aType int) (info *ArticleInfo, err error)
- func (s *Service) ArticleList(id, chapterID string, count, maxID int) (list *ArticleList, err error)
- func (s *Service) ArticlePoint(id, pType string) (detail *ArticleDetail, err error)
- func (s *Service) AudioByAlias(ID string) (list *AudioList, err error)
- func (s *Service) AudioDetail(ID string) (detail *AudioInfoResp, err error)
- func (s *Service) AudioDetailAlias(ID string) (detail *Audio, err error)
- func (s *Service) CheckLogin(token, qrcode string) (check *CheckLoginResp, cookie string, err error)
- func (s *Service) CourseCount(category string) (count int, err error)
- func (s *Service) CourseDetail(category string, id int) (detail *Course, err error)
- func (s *Service) CourseInfo(enid string) (info *CourseInfo, err error)
- func (s *Service) CourseList(category, order string, page, limit int) (list *CourseList, err error)
- func (s *Service) CourseListAll(category, order string) (list *CourseList, err error)
- func (s *Service) CourseType() (list *CourseCategoryList, err error)
- func (s *Service) EbookCommentList(id, sort string, page, limit int) (list *EbookCommentList, err error)
- func (s *Service) EbookDetail(enid string) (detail *EbookDetail, err error)
- func (s *Service) EbookInfo(token string) (info *EbookInfo, err error)
- func (s *Service) EbookPages(chapterID, token string, index, count, offset int) (pages *EbookPage, err error)
- func (s *Service) EbookReadToken(enid string) (t *Token, err error)
- func (s *Service) EbookShelfAdd(ids []string) (resp *EbookShelfAddResp, err error)
- func (s *Service) EbookShelfRemove(ids []string) (resp *EbookShelfAddResp, err error)
- func (s *Service) EbookUserInfo() (info *EbookVIPInfo, err error)
- func (s *Service) GetHomeInitialState() (state HomeInitState, err error)
- func (s *Service) GetQrcode(token string) (resp *QrCodeResp, err error)
- func (s *Service) GetVolcPlayAuthToken(mediaIDStr, securityToken string) (info *MediaVolc, err error)
- func (s *Service) GetVolcPlayInfo(query string) (info *VodPlayInfoResp, err error)
- func (s *Service) LiveBase(aliasID string) (detail *LiveBase, err error)
- func (s *Service) LiveCheck(aliasID, inviteCode string) (detail *LiveCheck, err error)
- func (s *Service) LiveList(liveType, page, limit int) (list *LiveList, err error)
- func (s *Service) LiveTabList() (list *LiveTabList, err error)
- func (s *Service) LoginAccessToken() (token string, err error)
- func (s *Service) OdobShelfAdd(ids []string) (resp *EbookShelfAddResp, err error)
- func (s *Service) OdobUserInfo() (info *OdobVip, err error)
- func (s *Service) SearchHot() (list *SearchTot, err error)
- func (s *Service) SunflowerLabelContent(enID string, nType, page, pageSize int) (list *SunflowerContent, err error)
- func (s *Service) SunflowerLabelList(nType int) (list *SunflowerLabelList, err error)
- func (s *Service) SunflowerResourceList() (list *SunflowerResourceList, err error)
- func (s *Service) Token() (t *Token, err error)
- func (s *Service) TopicAll(page, limit int) (list *TopicAll, err error)
- func (s *Service) TopicDetail(id string) (detail *TopicDetail, err error)
- func (s *Service) TopicNotesList(id string, isElected bool, page, limit int) (list *NotesList, err error)
- func (s *Service) TopicNotesTimeline(maxID string) (list *NotesTimeline, err error)
- func (s *Service) User() (user *User, err error)
- type Strategy
- type SunflowerContent
- type SunflowerLabelList
- type SunflowerResource
- type SunflowerResourceList
- type Switch
- type Token
- type TopicAll
- type TopicDetail
- type TopicIntro
- type TopicPresenter
- type TopicSummary
- type TopicTopArea
- type User
- type VIPUser
- type Video
- type VideoTrack
- type VodAdaptiveInfo
- type VodPlayInfo
- type VodPlayInfoModel
- type VodPlayInfoResp
- type VodRespMetadata
- type VodThumbInfo
- type VolcFormat
- type WendaExtInfo
Constants ¶
const ( // CateCourse 课程 CateCourse = "bauhinia" // CateAudioBook 听书 CateAudioBook = "odob" // CateEbook 电子书 CateEbook = "ebook" // CateAce 锦囊 CateAce = "compass" // CatAll 全部 CatAll = "all" )
Variables ¶
var ( CsrfToken = "" SetCookie []string )
var (
UserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36"
)
Functions ¶
func ParseCookies ¶
ParseCookies parse cookie string to cookie options
Types ¶
type AgencyDetail ¶
type AgencyDetail struct { ID int `json:"id"` IDStr string `json:"id_str"` Name string `json:"name"` Intro string `json:"intro"` QcgID int `json:"qcg_id"` QcgMemberName string `json:"qcg_member_name"` QcgMemberAvatar string `json:"qcg_member_avatar"` BookCount int `json:"book_count"` Uv int `json:"uv"` Status int `json:"status"` }
type AlgoFilter ¶
type AlgoFilterParam ¶
type AlgoFilterParam struct { ClassfcName string `json:"classfc_name"` // default "心理学" LabelId string `json:"label_id"` Page int `json:"page"` // default 0 PageSize int `json:"page_size"` // default 18 ProductTypes string `json:"product_types"` // default "66" RequestId string `json:"request_id"` SortStrategy string `json:"sort_strategy"` // default "HOT" "NEW" TagsIds []interface{} `json:"tags_ids"` }
type AlgoFilterResp ¶
type AlgoFilterResp struct { Filter AlgoFilter `json:"filter"` Total int `json:"total"` Request AlgoFilterParam `json:"request"` }
type AlgoProduct ¶
type AlgoProduct struct { ItemType int `json:"item_type"` Id int `json:"id"` ProductType int `json:"product_type"` ProductId int `json:"product_id"` Name string `json:"name"` Intro string `json:"intro"` PhaseNum int `json:"phase_num"` LearnUserCount int `json:"learn_user_count"` Price int `json:"price"` CurrentPrice int `json:"current_price"` IndexImg string `json:"index_img"` HorizontalImage string `json:"horizontal_image"` LecturersImg string `json:"lecturers_img"` PriceDesc string `json:"price_desc"` IsBuy int `json:"is_buy"` IsVip bool `json:"is_vip"` Trackinfo string `json:"trackinfo"` LogId string `json:"log_id"` LogType string `json:"log_type"` CornerImg string `json:"corner_img"` LecturerNameAndTitle string `json:"lecturer_name_and_title"` LecturersVStatus int `json:"lecturers_v_status"` CornerImgVertical string `json:"corner_img_vertical"` LecturerName string `json:"lecturer_name"` LecturerTitle string `json:"lecturer_title"` AuthorList []string `json:"author_list"` IdOut string `json:"id_out"` IsLimitFree bool `json:"is_limit_free"` HasPlayAuth bool `json:"has_play_auth"` ButtonType int `json:"button_type"` AudioId string `json:"audio_id"` AliasId string `json:"alias_id"` InBookrack bool `json:"in_bookrack"` IsShowNewbook bool `json:"is_show_newbook"` IsSubscribe bool `json:"is_subscribe"` OnlineTime string `json:"online_time"` ArticleInfo ArticleSimpleInfo `json:"article_info"` NeedLogin int `json:"need_login"` IsOnBookshelf bool `json:"is_on_bookshelf"` Duration int `json:"duration"` CollectionNum int `json:"collection_num"` DdUrl string `json:"dd_url"` LearningDaysDesc string `json:"learning_days_desc"` IsPreferential int `json:"is_preferential"` IsCountDown int `json:"is_count_down"` PreferentialStartTime int `json:"preferential_start_time"` PreferentialEndTime int `json:"preferential_end_time"` EarlyBirdPrice int `json:"early_bird_price"` TimeNow int `json:"time_now"` HotLearnDesc string `json:"hot_learn_desc"` Score string `json:"score"` Introduction string `json:"introduction"` UserScoreCount int `json:"user_score_count"` Progress int `json:"progress"` Metrics string `json:"metrics"` CostIntro CostIntro `json:"cost_intro"` ConsumedNum int `json:"consumed_num"` FreeMaximum int `json:"free_maximum"` BSellingChannelGroup int `json:"b_selling_channel_group"` TrackInfo string `json:"track_info"` SortValues []interface{} `json:"sort_values"` }
type AlgoProductResp ¶
type AlgoProductResp struct { ProductList []AlgoProduct `json:"product_list"` RequestId string `json:"request_id"` Total int `json:"total"` IsMore int `json:"is_more"` }
type Article ¶
type Article struct { ID int64 `json:"Id"` AppID int `json:"AppId"` Version int `json:"Version"` CreateTime int `json:"CreateTime"` UpdateTime int `json:"UpdateTime"` PublishTime int `json:"PublishTime"` Status int `json:"Status"` IDStr string `json:"IdStr"` AppIDStr string `json:"AppIdStr"` }
Article metadata
type ArticleBase ¶
type ArticleBase struct { ID int `json:"id"` IDStr string `json:"id_str"` Enid string `json:"enid"` ClassEnid string `json:"class_enid"` OriginID int `json:"origin_id"` OriginIDStr string `json:"origin_id_str"` ProductType int `json:"product_type"` ProductID int `json:"product_id"` ProductIDStr string `json:"product_id_str"` ClassID int `json:"class_id"` ClassIDStr string `json:"class_id_str"` ChapterID int `json:"chapter_id"` ChapterIDStr string `json:"chapter_id_str"` Title string `json:"title"` Logo string `json:"logo"` URL string `json:"url"` Summary string `json:"summary"` Mold int `json:"mold"` PushContent string `json:"push_content"` PublishTime int `json:"publish_time"` PushTime int `json:"push_time"` PushStatus int `json:"push_status"` DdArticleID int64 `json:"dd_article_id"` DdArticleIDStr string `json:"dd_article_id_str"` DdArticleToken string `json:"dd_article_token"` Status int `json:"status"` CreateTime int `json:"create_time"` UpdateTime int `json:"update_time"` CurLearnCount int `json:"cur_learn_count"` IsFreeTry bool `json:"is_free_try"` IsUserFreeTry bool `json:"is_user_free_try"` OrderNum int `json:"order_num"` IsLike bool `json:"is_like"` IsRead bool `json:"is_read"` LogID string `json:"log_id"` LogType string `json:"log_type"` RecommendTitle string `json:"recommend_title"` AudioAliasIds []string `json:"audio_alias_ids"` IsBuy bool `json:"is_buy"` DdMediaID int `json:"dd_media_id"` DdMediaIDStr string `json:"dd_media_id_str"` VideoStatus int `json:"video_status"` // 1-video DdLiveID int `json:"dd_live_id"` NotJoinPlan int `json:"not_join_plan"` }
ArticleBase article base info
type ArticleCommentList ¶
type ArticleDetail ¶
ArticleDetail article content GET query params token,sign,appid
type ArticleInfo ¶
type ArticleInfo struct { ClassID int `json:"class_id"` ClassEnid string `json:"class_enid"` Ptype int `json:"ptype"` Pid int `json:"pid"` ArticleID int `json:"article_id"` OriginArticleID int `json:"origin_article_id"` DdArticleID int64 `json:"dd_article_id"` DdArticleToken string `json:"dd_article_token"` LikeNum int `json:"like_num"` IsLike bool `json:"is_like"` IsBuy int `json:"is_buy"` IsFreeTry bool `json:"is_free_try"` IsUserFreeTry bool `json:"is_user_free_try"` PrevArticleID int `json:"prev_article_id"` PrevArticleEnid string `json:"prev_article_enid"` NextArticleID int `json:"next_article_id"` NextArticleEnid string `json:"next_article_enid"` ArticleInfo ArticleIntro `json:"article_info"` ClassInfo ClassInfo `json:"class_info"` Extra string `json:"extra"` TrialReadCount int `json:"trial_read_count"` TrialMaxReadCount int `json:"trial_max_read_count"` ArticleTitle string `json:"article_title"` ClassTitle string `json:"class_title"` PaymentAudioID int `json:"payment_audio_id"` ResourceID int `json:"resource_id"` ResourceType int `json:"resource_type"` Audio Audio `json:"audio"` }
ArticleInfo article info
type ArticleIntro ¶
type ArticleIntro struct { ArticleBase MediaBaseInfo []MediaBaseInfo `json:"media_base_info"` Audio *Audio `json:"audio,omitempty"` Video *[]Video `json:"video,omitempty"` }
ArticleIntro article introduce
type ArticleList ¶
type ArticleList struct { List []ArticleIntro `json:"article_list"` ClassID int `json:"class_id"` Ptype int `json:"ptype"` PID int `json:"pid"` Reverse bool `json:"reverse"` ChapterIDStr string `json:"chapter_id"` MaxID int `json:"max_id"` }
ArticleList class article list
type ArticlePoint ¶
type ArticlePoint struct { HasArticlePoint int `json:"has_article_point"` Content string `json:"content"` }
ArticlePoint article point note
type ArticleSimpleInfo ¶
type Audio ¶
type Audio struct { AliasID string `json:"alias_id"` Extrainfo string `json:"extrainfo"` ClassID int `json:"class_id"` Title string `json:"title"` Mp3PlayURL string `json:"mp3_play_url"` Duration int `json:"duration"` Schedule int `json:"schedule"` TopicID int `json:"topic_id"` Summary string `json:"summary"` Price int `json:"price"` Icon string `json:"icon"` Size int `json:"size"` Etag string `json:"etag"` Token string `json:"token"` Collection int `json:"collection"` Count int `json:"count"` BoredCount int `json:"bored_count"` AudioType int `json:"audio_type"` DrmVersion int `json:"drm_version"` SourceID int `json:"source_id"` SourceType int `json:"source_type"` SourceIcon string `json:"source_icon"` SourceName string `json:"source_name"` ListenProgress float64 `json:"listen_progress"` ListenFinished bool `json:"listen_finished"` DdArticleID string `json:"dd_article_id"` AudioListIcon string `json:"audio_list_icon"` ClassCourseID string `json:"class_course_id"` ClassArticleID string `json:"class_article_id"` LogID string `json:"log_id"` LogType string `json:"log_type"` LogInterface string `json:"log_interface"` Trackinfo string `json:"trackinfo"` UsedDrm int `json:"used_drm"` IndexImg string `json:"index_img"` Reader string `json:"reader"` ReaderName string `json:"reader_name"` OdobGroupEnid string `json:"odob_group_enid"` }
Audio audio
type AudioDetail ¶
type AudioDetail struct {
Detail Audio `json:"audio_detail"`
}
type AudioInfo ¶
type AudioInfo struct { ID int `json:"id"` AudioID string `json:"audio_id"` Title string `json:"title"` Icon string `json:"icon"` Duration int `json:"duration"` AudioPrice string `json:"audio_price"` AudioSummary string `json:"audio_summary"` PublishTime int `json:"publish_time"` IsVipGived bool `json:"is_vip_gived"` IsVip bool `json:"is_vip"` AgencyDetail AgencyDetail `json:"agency_detail"` LogID int `json:"log_id"` IsBuy bool `json:"is_buy"` InBookrack bool `json:"in_bookrack"` Progress int `json:"progress"` Tag []string `json:"tag"` TopicSummary []TopicSummary `json:"topic_summary"` IsLimitFree bool `json:"is_limit_free"` TopicEncodeId string `json:"topic_encode_id"` LimitFree LimitFree `json:"limit_free"` VipEndTime int `json:"vip_end_time"` ButtonType int `json:"button_type"` HasPlayAuth bool `json:"has_play_auth"` Rank Rank `json:"rank"` LearnCount int `json:"learn_count"` LearnCountDesc string `json:"learn_count_desc"` }
type AudioInfoResp ¶
type AudioList ¶
type AudioList struct {
List []Audio `json:"list"`
}
AudioList audio basic info list
type Banner ¶
type Banner struct { BeginTime int `json:"beginTime"` EndTime int `json:"endTime"` Id int `json:"id"` Img string `json:"img"` IsDelete int `json:"isDelete"` ModuleId int `json:"moduleId"` Sort int `json:"sort"` SourceId string `json:"sourceId"` Title string `json:"title"` Url string `json:"url"` UrlType int `json:"urlType"` }
type Catalog ¶
type Catalog struct { Level int `json:"level"` Text string `json:"text"` Href string `json:"href"` PlayOrder int `json:"playOrder"` }
Catalog ebook catalog
type Chapter ¶
type Chapter struct { ID int `json:"id"` IDStr string `json:"id_str"` ClassID int `json:"class_id"` ClassIDStr string `json:"class_id_str"` OrderName string `json:"order_name"` Name string `json:"name"` Intro string `json:"intro"` PhaseNum int `json:"phase_num"` Status int `json:"status"` OrderNum int `json:"order_num"` IsFinished int `json:"is_finished"` UpdateTime int `json:"update_time"` LogID string `json:"log_id"` LogType string `json:"log_type"` AppendageCount int `json:"appendage_count"` ArticleList []ArticleBase `json:"article_list"` }
Chapter metadata
type CheckLoginResp ¶
type ClassComment ¶
type ClassComment struct { ID int `json:"id"` UserID int `json:"user_id"` Title string `json:"title"` Score int `json:"score"` Content string `json:"content"` NoStyleContent string `json:"no_style_content"` NoteID string `json:"note_id"` Nickname string `json:"nickname"` Avatar string `json:"avatar"` AvatarS string `json:"avatar_s"` TrackInfo string `json:"track_info"` }
type ClassCommentInfo ¶
type ClassCommentInfo struct { CommentList []ClassComment `json:"comment_list"` Count int `json:"count"` AverageScore string `json:"average_score"` }
type ClassInfo ¶
type ClassInfo struct { LogID string `json:"log_id"` LogType string `json:"log_type"` ID int `json:"id"` IDStr string `json:"id_str"` Enid string `json:"enid"` ProductID int `json:"product_id"` ProductType int `json:"product_type"` HasChapter int `json:"has_chapter"` Name string `json:"name"` Intro string `json:"intro"` PhaseNum int `json:"phase_num"` LearnUserCount int `json:"learn_user_count"` CurrentArticleCount int `json:"current_article_count"` Highlight string `json:"highlight"` Price int `json:"price"` IndexImg string `json:"index_img"` IndexImgApplet string `json:"index_img_applet"` Logo string `json:"logo"` LogoIphonex string `json:"logo_iphonex"` SquareImg string `json:"square_img"` OutlineImg string `json:"outline_img"` PlayerImg string `json:"player_img"` Status int `json:"status"` OrderNum int `json:"order_num"` ShzfURL string `json:"shzf_url"` ShzfURLQr string `json:"shzf_url_qr"` PriceDesc string `json:"price_desc"` ArticleTime int `json:"article_time"` ArticleTitle string `json:"article_title"` IsSubscribe int `json:"is_subscribe"` LecturerUID int `json:"lecturer_uid"` LecturerName string `json:"lecturer_name"` LecturerTitle string `json:"lecturer_title"` LecturerIntro string `json:"lecturer_intro"` LecturerNameAndTitle string `json:"lecturer_name_and_title"` LecturerAvatar string `json:"lecturer_avatar"` IsFinished int `json:"is_finished"` UpdateTime int `json:"update_time"` DefaultSortReverse bool `json:"default_sort_reverse"` PresaleURL string `json:"presale_url"` WithoutAudio bool `json:"without_audio"` ViewType int `json:"view_type"` H5URLName string `json:"h5_url_name"` PackageManagerSwitch bool `json:"package_manager_switch"` PackageManager bool `json:"package_manager"` LectureAvatorSpecial string `json:"lecture_avator_special"` EstimatedShelfTime int `json:"estimated_shelf_time"` EstimatedDownTime int `json:"estimated_down_time"` CornerImg string `json:"corner_img"` CornerImgVertical string `json:"corner_img_vertical"` WithoutGiving bool `json:"without_giving"` DdURL string `json:"dd_url"` PublishTime int `json:"publish_time"` DdMediaID string `json:"dd_media_id"` VideoCover string `json:"video_cover"` IsInVip bool `json:"is_in_vip"` IsVip bool `json:"is_vip"` Collection Collection `json:"collection"` FormalArticleCount int `json:"formal_article_count"` VideoClass int `json:"video_class"` VideoClassIntro string `json:"video_class_intro"` ActivityIcon string `json:"activity_icon"` ActivityTitle string `json:"activity_title"` ActivityURL string `json:"activity_url"` RealityExtraCount int `json:"reality_extra_count"` RealityFormalCount int `json:"reality_formal_count"` IntroArticleIds []int `json:"intro_article_ids"` IsPreferential int `json:"is_preferential"` IsCountDown int `json:"is_count_down"` PreferentialStartTime int `json:"preferential_start_time"` PreferentialEndTime int `json:"preferential_end_time"` EarlyBirdPrice int `json:"early_bird_price"` TrialCount int `json:"trial_count"` SpecialLogo string `json:"special_logo"` EarlyBirdMsg string `json:"early_bird_msg"` }
ClassInfo class info
type ClassReviews ¶
type Collection ¶
type Comment ¶
type Comment struct { AttachmentType int `json:"attachment_type"` AuditState int `json:"audit_state"` Class int `json:"class"` CommentReply string `json:"comment_reply"` CommentReplyTime int `json:"comment_reply_time"` Content string `json:"content"` ContentType int `json:"content_type"` CreateTime int `json:"create_time"` CurrentState int `json:"current_state"` Ddurl Ddurl `json:"ddurl"` DetailId int `json:"detail_id"` Extra NotesExtra `json:"extra"` FeedId int64 `json:"feed_id"` Highlights []interface{} `json:"highlights"` IsFromMe int `json:"is_from_me"` CanEdit bool `json:"can_edit"` IsLike bool `json:"is_like"` IsOpenLedgers bool `json:"is_open_ledgers"` IsPermission bool `json:"is_permission"` IsReposted bool `json:"is_reposted"` IsUpmost bool `json:"is_upmost"` LevelPermission bool `json:"level_permission"` Lesson Lesson `json:"lesson"` Level int `json:"level"` LevelType int `json:"level_type"` LogId string `json:"log_id"` LogType string `json:"log_type"` Note string `json:"note"` NoteId int64 `json:"note_id"` NoteIdHazy string `json:"note_id_hazy"` NoteIdStr string `json:"note_id_str"` NoteLine string `json:"note_line"` NoteLineStyle string `json:"note_line_style"` NoteTitle string `json:"note_title"` NoteType int `json:"note_type"` NotesCount NotesCount `json:"notes_count"` NotesOwner NotesUser `json:"notes_owner"` NotesTopicInfo NotesTopicInfo `json:"notes_topic_info,omitempty"` OriginAuditState int `json:"origin_audit_state"` OriginContentType int `json:"origin_content_type"` OriginNoteIdHazy string `json:"origin_note_id_hazy"` OriginNoteIdStr string `json:"origin_note_id_str"` OriginNotesOwner NotesUser `json:"origin_notes_owner"` OriginState int `json:"origin_state"` Pid int `json:"pid"` PidStr string `json:"pid_str"` Ptype int `json:"ptype"` RefId int `json:"ref_id"` RootAuditState int `json:"root_audit_state"` RootContentType int `json:"root_content_type"` RootHighlights []interface{} `json:"root_highlights"` RootNoteId int `json:"root_note_id"` RootNoteIdHazy string `json:"root_note_id_hazy"` RootNoteIdStr string `json:"root_note_id_str"` RootNotesOwner NotesUser `json:"root_notes_owner"` RootState int `json:"root_state"` SourceType int `json:"source_type"` State int `json:"state"` StyleNoteLine string `json:"style_note_line"` Switch Switch `json:"switch"` Tags []interface{} `json:"tags"` Uid int `json:"uid"` UidHazy string `json:"uid_hazy"` UpdateTime int `json:"update_time"` UserExpectStatus int `json:"user_expect_status"` Video CommentVideo `json:"video"` CommentIdStr string `json:"comment_id_str"` CommentReplyUser NotesUser `json:"comment_reply_user"` RepostCommentNoteIdStr string `json:"repost_comment_note_id_str"` RepostCommentNoteIdHazy string `json:"repost_comment_note_id_hazy"` PidHazy string `json:"pid_hazy"` }
type CommentVideo ¶
type CommentVideo struct { CardType int `json:"card_type"` Resource string `json:"resource"` ResourceCommentCount int `json:"resource_comment_count"` ResourceIcon string `json:"resource_icon"` ResourceStudyCount int `json:"resource_study_count"` VideoCover string `json:"video_cover"` VideoDuration int `json:"video_duration"` VideoDurationLabel string `json:"video_duration_label"` VideoHeight int `json:"video_height"` VideoId int `json:"video_id"` VideoRst string `json:"video_rst"` VideoState int `json:"video_state"` VideoWidth int `json:"video_width"` ViewCount int `json:"view_count"` }
type Content ¶
type Content struct { Aid string `json:"aid"` AliasID string `json:"aliasId"` Contents interface{} `json:"contents"` Desc string `json:"desc"` Duration int64 `json:"duration"` Height int64 `json:"height"` Jump string `json:"jump"` Justify string `json:"justify"` Legend string `json:"legend"` Level int `json:"level"` Size int64 `json:"size"` Text string `json:"text"` Title string `json:"title"` Type string `json:"type"` Ordered bool `json:"ordered"` URL string `json:"url"` Width int64 `json:"width"` Labels []string `json:"labels"` }
Content article Content
type CookieOptions ¶
type CookieOptions struct { GAT string `json:"gat"` ISID string `json:"isid"` Iget string `json:"iget"` Token string `json:"token"` CsrfToken string `json:"csrfToken"` GuardDeviceID string `json:"_guard_device_id" mapstructure:"_guard_device_id"` SID string `json:"_sid" mapstructure:"_sid"` AcwTc string `json:"acw_tc" mapstructure:"acw_tc"` AliyungfTc string `json:"aliyungf_tc"` CookieStr string `json:"cookieStr"` }
CookieOptions dedao cookie options
type Course ¶
type Course struct { Enid string `json:"enid"` ID int `json:"id"` Type int `json:"type"` ClassType int `json:"class_type"` ClassID int `json:"class_id"` HasExtra bool `json:"has_extra"` ClassFinished bool `json:"class_finished"` Title string `json:"title"` Intro string `json:"intro"` Author string `json:"author"` Icon string `json:"icon"` CreateTime int `json:"create_time"` LastRead string `json:"last_read"` Progress int `json:"progress"` Duration int `json:"duration"` CourseNum int `json:"course_num"` PublishNum int `json:"publish_num"` LogID string `json:"log_id"` LogType string `json:"log_type"` IsTop int `json:"is_top"` LastActionTime int `json:"last_action_time"` IsNew int `json:"is_new"` IsFinished int `json:"is_finished"` Size string `json:"size"` DdURL string `json:"dd_url"` AssetsType int `json:"assets_type"` DrmToken string `json:"drm_token"` AudioDetail Audio `json:"audio_detail"` ProductPrice int `json:"product_price"` Price string `json:"price"` ProductIntro string `json:"product_intro"` HasPlayAuth bool `json:"has_play_auth"` ExtInfo []ReplierInfo `json:"ext_info"` Status int `json:"status"` DdExtURL string `json:"dd_ext_url"` IsCollected bool `json:"is_collected"` WendaExtInfo WendaExtInfo `json:"wenda_ext_info"` }
Course metadata
func EnlightenClub ¶
func EnlightenClub() (detail Course)
type CourseCategory ¶
type CourseCategory struct { Name string `json:"name"` Count int `json:"count"` Category string `json:"category"` }
CourseCategory course category metadata
type CourseCategoryList ¶
type CourseCategoryList struct { Data struct { List []CourseCategory `json:"list"` IsShowURL bool `json:"is_show_url"` PCURL string `json:"pc_url"` } `json:"data"` }
CourseCategoryList course type list
type CourseInfo ¶
type CourseInfo struct { ClassInfo ClassInfo `json:"class_info"` Items []CourseIntro `json:"items"` ArticleIntro ArticleIntro `json:"intro_article"` ChapterList []Chapter `json:"chapter_list"` FlatArticleList []ArticleBase `json:"flat_article_list"` UserType string `json:"user_type"` HasMoreFlatArticleList bool `json:"has_more_flat_article_list"` IsShowGrading bool `json:"is_show_grading"` ClassVideo interface{} `json:"class_video"` LiveInfo interface{} `json:"live_info"` TimeNow int `json:"time_now"` ClassReviewsCount int `json:"class_reviews_count"` ClassReviews ClassReviews `json:"class_reviews"` AchievementDetail interface{} `json:"achievement_detail"` ClassCommentInfo ClassCommentInfo `json:"class_comment_info"` LiveInnerArticleInfo LiveInnerArticleInfo `json:"live_inner_article_info"` }
CourseInfo product intro info
type CourseIntro ¶
type CourseIntro struct { Type int `json:"type"` Title string `json:"title"` Content string `json:"content"` }
CourseIntro course introduce
type CourseList ¶
type CourseList struct { List []Course `json:"list"` ISMore int `json:"is_more"` Page int `json:"page"` }
CourseList product list
type EbookBlock ¶
type EbookBlock struct { ChapterID string `json:"chapterId"` SectionID string `json:"sectionID"` EndOffset int `json:"endOffset"` StartOffset int `json:"startOffset"` }
EbookBlock ebook block
type EbookCommentList ¶
type EbookCommentList struct { EbookScore EbookScore `json:"ebook_score"` SelfInfo SelfInfo `json:"self_info"` List []Comment `json:"list"` Total int `json:"total"` Book Book `json:"book"` }
type EbookDetail ¶
type EbookDetail struct { ID int `json:"id"` Title string `json:"title"` Style int `json:"style"` Cover string `json:"cover"` Count int `json:"count"` Price string `json:"price"` Status int `json:"status"` OperatingTitle string `json:"operating_title"` AuthorInfo string `json:"author_info"` BookAuthor string `json:"book_author"` PublishTime string `json:"publish_time"` CatalogList []Catalog `json:"catalog_list"` BookIntro string `json:"book_intro"` BSpecialPrice string `json:"b_special_price"` CurrentPrice string `json:"current_price"` IsBuy bool `json:"is_buy"` IsTrial bool `json:"is_trial"` IsTtsSwitch bool `json:"is_tts_switch"` LogID string `json:"log_id"` LogType string `json:"log_type"` OriginalPrice string `json:"original_price"` AuthorList []string `json:"author_list"` CanTrialRead bool `json:"can_trial_read"` TrialReadProportion string `json:"trial_read_proportion"` WithVideo bool `json:"with_video"` Enid string `json:"enid"` BOverseasPurchase int `json:"b_overseas_purchase"` RankName string `json:"rank_name"` RankNum int `json:"rank_num"` IsVipBook int `json:"is_vip_book"` IsOnBookshelf bool `json:"is_on_bookshelf"` ProductScore string `json:"product_score"` ReadTime int `json:"read_time"` ReadNumber []interface{} `json:"read_number"` Press Press `json:"press"` DoubanScore string `json:"douban_score"` ClassifyName string `json:"classify_name"` ClassifyID int `json:"classify_id"` AddStudylistDdURL string `json:"add_studylist_dd_url"` }
EbookDetail ebook detail
type EbookInfo ¶
type EbookInfo struct { BookInfo struct { EbookBlock [][]EbookBlock `json:"block"` Orders []EbookOrders `json:"orders"` Toc []utils.EbookToc `json:"toc"` Pages []EbookInfoPage `json:"pages"` } `json:"bookInfo"` }
EbookInfo ebook info
type EbookInfoPage ¶
type EbookOrders ¶
type EbookOrders struct { ChapterID string `json:"chapterId"` PathInEpub string `json:"pathInEpub"` }
EbookOrders ebook orders
type EbookPage ¶
type EbookPage struct { IsEnd bool `json:"is_end"` Pages []struct { BeginOffset int64 `json:"begin_offset"` EndOffset int64 `json:"end_offset"` IsFirst bool `json:"is_first"` IsLast bool `json:"is_last"` Svg string `json:"svg"` ViewHeighToChapterTop int64 `json:"view_heigh_to_chapter_top"` } `json:"pages"` }
type EbookScore ¶
type EbookScore struct { Id int `json:"id"` Pid int `json:"pid"` Ptype int `json:"ptype"` Isbn string `json:"isbn"` AverageScore string `json:"average_score"` ScoreInfo []string `json:"score_info"` CreateTime string `json:"create_time"` UpdateTime string `json:"update_time"` Total string `json:"total"` Status int `json:"status"` BookStatus int `json:"book_status"` }
type EbookShelfAddResp ¶
type EbookToc ¶
type EbookToc struct { Href string `json:"href"` Level int `json:"level"` PlayOrder int `json:"playOrder"` Offset int `json:"offset"` Text string `json:"text"` }
EbookToc ebook toc
type EbookVIPInfo ¶
type EbookVIPInfo struct { UID int `json:"uid"` Nickname string `json:"nickname"` Slogan string `json:"slogan"` Avatar string `json:"avatar"` AvatarS string `json:"avatar_s"` MonthCount int `json:"month_count"` TotalCount int `json:"total_count"` WeekCount int `json:"week_count"` FinishedCount int `json:"finished_count"` SavePrice string `json:"save_price"` IsVip bool `json:"is_vip"` BeginTime int `json:"begin_time"` EndTime int `json:"end_time"` EnterpriseEndTime int `json:"enterprise_end_time"` ExpireTime int `json:"expire_time"` SurplusTime int `json:"surplus_time"` IsExpire bool `json:"is_expire"` CardID int `json:"card_id"` CardType int `json:"card_type"` PriceDesc string `json:"price_desc"` IsBuyMonthDiscount bool `json:"is_buy_month_discount"` MonthDiscountPrice int `json:"month_discount_price"` DdURL string `json:"dd_url"` ErrTips string `json:"err_tips"` VStateValue int `json:"v_state_value"` UpgradeTips []interface{} `json:"upgrade_tips"` }
EbookVIPInfo ebook vip info
type FlatArticleList ¶
type FlatArticleList struct { ID int `json:"id"` IDStr string `json:"id_str"` Enid string `json:"enid"` ClassEnid string `json:"class_enid"` OriginID int `json:"origin_id"` OriginIDStr string `json:"origin_id_str"` ProductType int `json:"product_type"` ProductID int `json:"product_id"` ProductIDStr string `json:"product_id_str"` ClassID int `json:"class_id"` ClassIDStr string `json:"class_id_str"` ChapterID int `json:"chapter_id"` ChapterIDStr string `json:"chapter_id_str"` Title string `json:"title"` Logo string `json:"logo"` URL string `json:"url"` Summary string `json:"summary"` Mold int `json:"mold"` PushContent string `json:"push_content"` PublishTime int `json:"publish_time"` PushTime int `json:"push_time"` PushStatus int `json:"push_status"` DdArticleID int64 `json:"dd_article_id"` DdArticleIDStr string `json:"dd_article_id_str"` DdArticleToken string `json:"dd_article_token"` Status int `json:"status"` CreateTime int `json:"create_time"` UpdateTime int `json:"update_time"` CurLearnCount int `json:"cur_learn_count"` IsFreeTry bool `json:"is_free_try"` IsUserFreeTry bool `json:"is_user_free_try"` OrderNum int `json:"order_num"` IsLike bool `json:"is_like"` IsRead bool `json:"is_read"` LogID string `json:"log_id"` LogType string `json:"log_type"` RecommendTitle string `json:"recommend_title"` AudioAliasIds []interface{} `json:"audio_alias_ids"` IsBuy bool `json:"is_buy"` DdMediaID int `json:"dd_media_id"` DdMediaIDStr string `json:"dd_media_id_str"` VideoStatus int `json:"video_status"` DdLiveID int `json:"dd_live_id"` NotJoinPlan int `json:"not_join_plan"` }
FlatArticleList flat
type HTab ¶
type HTab struct { Id int `json:"id"` Title string `json:"title"` SubTitle string `json:"subTitle"` SearchKey string `json:"searchKey"` Url string `json:"url"` PinnedDeadLine interface{} `json:"pinnedDeadLine"` SceneId int `json:"sceneId"` Uv int `json:"uv"` Click int `json:"click"` Ctr int `json:"ctr"` TrackInfo string `json:"trackInfo"` TurnType int `json:"turnType"` HotType int `json:"hotType"` LogId int `json:"log_id"` LogType string `json:"log_type"` }
type HomeCategory ¶
type HomeCategory struct { EnglishName string `json:"englishName"` Enid string `json:"enid"` Icon string `json:"icon"` Id int `json:"id"` LabelList []Label `json:"labelList"` Name string `json:"name"` RelationId int `json:"relationId"` RelationName string `json:"relationName"` Type int `json:"type"` }
type HomeData ¶
type HomeData struct { ModuleList []HomeModule `json:"moduleList"` CategoryList []HomeCategory `json:"categoryList"` Banner []Banner `json:"banner"` }
type HomeInitState ¶
type HomeModule ¶
type HomeModule struct { Description string `json:"description"` Ext1 string `json:"ext1"` Ext2 string `json:"ext2"` Ext3 string `json:"ext3"` Ext4 string `json:"ext4"` Ext5 string `json:"ext5"` Id int `json:"id"` IsShow int `json:"isShow"` Name string `json:"name"` Sort int `json:"sort"` Title string `json:"title"` Type string `json:"type"` }
type HotTab ¶
type HotTab struct { Id int `json:"id"` Name string `json:"name"` SceneId int `json:"scene_id"` Status int `json:"status"` SortNum int `json:"sort_num"` CreateTime time.Time `json:"create_time"` UpdateTime time.Time `json:"update_time"` SceneName string `json:"scene_name"` List []HTab `json:"list"` }
type LimitFree ¶
type LimitFree struct { LimitFreeExpire bool `json:"limit_free_expire"` IsLimitFree bool `json:"is_limit_free"` IsRedPacket bool `json:"is_red_packet"` FreeBeginTime int `json:"free_begin_time"` FreeEndTime int `json:"free_end_time"` FreeMaximum int `json:"free_maximum"` ConsumeNum int `json:"consume_num"` VipEndTime int `json:"vip_end_time"` }
type Live ¶
type Live struct { Status int `json:"status"` OnlineNum int `json:"online_num"` ReservationNum int `json:"reservation_num"` Title string `json:"title"` RoomId int `json:"room_id"` Intro string `json:"intro"` Starttime int `json:"starttime"` StarttimeDesc string `json:"starttime_desc"` Duration int `json:"duration"` Endtime int `json:"endtime"` Id int `json:"id"` Type int `json:"type"` LogId int `json:"log_id"` LogType string `json:"log_type"` LiveType string `json:"live_type"` LivePrivilegeTips string `json:"live_privilege_tips"` HomeImg string `json:"home_img"` Author string `json:"author"` PvNum int `json:"pv_num"` PrivilegeStatus int `json:"privilege_status"` AliasId string `json:"alias_id"` AppointmentStatus int `json:"appointment_status"` PlaybackStatus int `json:"playback_status"` PublishStatus int `json:"publish_status"` LiveDurationText string `json:"live_duration_text"` VideoDuration string `json:"video_duration"` LivePrivilegeType int `json:"live_privilege_type"` Logo string `json:"logo"` TimeReport int `json:"time_report"` HideOnlineNumber int `json:"hide_online_number"` LivePv int `json:"live_pv"` LiveViewers int `json:"live_viewers"` ShowPv int `json:"show_pv"` IsPrivilegeLive bool `json:"is_privilege_live"` InviteCount int `json:"invite_count"` CanWatch bool `json:"can_watch"` HasBuy bool `json:"has_buy"` PrivilegeLiveTag string `json:"privilege_live_tag"` SubscribeSummary string `json:"subscribe_summary"` DdUrl string `json:"dd_url"` ShowSubscribeSummary int `json:"show_subscribe_summary"` AlertTips string `json:"alert_tips"` Currenttime int `json:"currenttime"` VideoCoverM3U8 string `json:"video_cover_m3u8"` LiveCoverM3U8 string `json:"live_cover_m3u8"` WebPcMediaToken string `json:"web_pc_media_token"` LdFlv string `json:"ld_flv"` VideoCoverMediaId int64 `json:"video_cover_media_id"` LastStartTimestamp int `json:"last_start_timestamp"` LastEndTimestamp int `json:"last_end_timestamp"` PrivilegeProduct LivePrivilegeProduct `json:"privilege_product"` }
type LiveActivityInfo ¶
type LiveArticleInfo ¶
type LiveBase ¶
type LiveBase struct { LiveLectureList []LiveLecture `json:"live_lecture_list"` LiveOutline LiveOutline `json:"live_outline"` RoomDetailDdurl string `json:"room_detail_ddurl"` Status int `json:"status"` Logo string `json:"logo"` PosterImage string `json:"poster_image"` Intro string `json:"intro"` Title string `json:"title"` Starttimestamp int `json:"starttimestamp"` Id int `json:"id"` Booking LiveBooking `json:"booking"` LiveSeriesIds string `json:"live_series_ids"` PlaybackStatus int `json:"playback_status"` PublishStatus int `json:"publish_status"` LiveSeriresInfo interface{} `json:"live_serires_info"` LiveType string `json:"live_type"` Ptype int `json:"ptype"` LastStartTime string `json:"last_start_time"` LastEndTime string `json:"last_end_time"` MaxNum int `json:"max_num"` Uv int `json:"uv"` LivePv int `json:"live_pv"` LiveViewers int `json:"live_viewers"` ShowPv int `json:"show_pv"` InviteCount int `json:"invite_count"` IsPrivilegeLive bool `json:"is_privilege_live"` AuthorText string `json:"author_text"` LiveArticleInfo LiveArticleInfo `json:"live_article_info"` LiveActivityInfo LiveActivityInfo `json:"live_activity_info"` IsActivityLive bool `json:"is_activity_live"` YouzanVipProductUrl string `json:"youzan_vip_product_url"` LiveUv int `json:"live_uv"` LiveMedalModule interface{} `json:"live_medal_module"` LivePrivilegeType int `json:"live_privilege_type"` LiveRecordNum string `json:"live_record_num"` }
type LiveBooking ¶
type LiveCheck ¶
type LiveCheck struct { Status int `json:"status"` Token string `json:"token"` LivePrivilegeTips string `json:"live_privilege_tips"` LiveType string `json:"live_type"` Logo string `json:"logo"` ExpiredSeconds int `json:"expired_seconds"` ProductType int `json:"product_type"` ProductId int `json:"product_id"` Ddurl string `json:"ddurl"` NeedBuy bool `json:"need_buy"` ButtonText string `json:"button_text"` ProductSubid int `json:"product_subid"` LiveProductBuyTips string `json:"live_product_buy_tips"` InviteCount int `json:"invite_count"` IsPrivilegeLive bool `json:"is_privilege_live"` ErrorMsg string `json:"error_msg"` HasBuy bool `json:"has_buy"` }
type LiveInnerArticleInfo ¶
type LiveLecture ¶
type LiveLecture struct { TeacherUid int `json:"teacher_uid"` TeacherName string `json:"teacher_name"` TeacherIntro string `json:"teacher_intro"` Avatar string `json:"avatar"` ProfileUrl string `json:"profile_url"` IsBigv int `json:"is_bigv"` FllowStatus int `json:"fllow_status"` FollowCount int `json:"follow_count"` FansCount int `json:"fans_count"` TeacherUidAlias string `json:"teacher_uid_alias"` }
type LiveOutline ¶
type LivePrivilegeProduct ¶
type LivePrivilegeProduct struct { Id int `json:"id"` ProductId int `json:"product_id"` ProductSubId int `json:"product_sub_id"` ProductType int `json:"product_type"` Title string `json:"title"` Ddurl string `json:"ddurl"` LiveStartTime int `json:"live_start_time"` LiveId int `json:"live_id"` HasPrivilege bool `json:"has_privilege"` AliasName string `json:"alias_name"` AliasId string `json:"alias_id"` IsPrivilegeLive bool `json:"is_privilege_live"` ProductGroupId int `json:"product_group_id"` }
type LiveTabList ¶
type LiveTabList struct {
List []LiveTab `json:"list"`
}
type MediaBaseInfo ¶
type MediaBaseInfo struct { MediaType int `json:"media_type"` // 1-audio,2-video SourceID string `json:"source_id"` SecurityToken string `json:"security_token"` }
MediaBaseInfo media info
type MediaVolc ¶
type MediaVolc struct { MediaAliasId string `json:"media_alias_id"` LastModify time.Time `json:"last_modify"` VersionId int `json:"version_id"` Tracks []VideoTrack `json:"tracks"` }
type Navigation ¶
type Navigation struct {}
type NoteBaseSource ¶
type NoteBaseSource struct { Title string `json:"title"` SubTitle string `json:"sub_title"` Img string `json:"img"` PType int `json:"p_type"` PidStr string `json:"pid_str"` NotePtype int `json:"note_ptype"` IsPopLoginView bool `json:"is_pop_login_view"` NeedCheckBuy bool `json:"need_check_buy"` URL1 string `json:"url1"` URL2 string `json:"url2"` CampHazy CampHazy `json:"camp_hazy"` }
NoteBaseSource Note BaseSource
type NoteCount ¶
type NoteCount struct { RepostCount int `json:"repost_count"` CommentCount int `json:"comment_count"` LikeCount int `json:"like_count"` }
NoteCount note count
type NoteDetail ¶
type NoteDetail struct { DetailTitle string `json:"detail_title"` Comb *[]Comb `json:"comb"` State int `json:"state"` IsMine bool `json:"is_mine"` IsReposted bool `json:"is_reposted"` IsLike bool `json:"is_like"` OwnUIDHazy string `json:"own_uid_hazy"` Topic NoteTopic `json:"topic"` Tags []interface{} `json:"tags"` Folders interface{} `json:"folders"` NoteCount NoteCount `json:"note_count"` FPart NoteFPart `json:"f_part"` SPart *NoteFPart `json:"s_part"` Class int `json:"class"` Level int `json:"level"` LevelType int `json:"level_type"` LevelPermission bool `json:"level_permission"` NotesType int `json:"notes_type"` }
NoteDetail note detail
type NoteFPart ¶
type NoteFPart struct { UID int `json:"uid"` UIDHazy string `json:"uid_hazy"` NickName string `json:"nick_name"` Avatar string `json:"avatar"` Follow int `json:"follow"` IsV int `json:"is_v"` Slogan string `json:"slogan"` VInfo string `json:"v_info"` StudentID int `json:"student_id"` StudentIDHazy string `json:"student_id_hazy"` IsPoster bool `json:"is_poster"` QrCode string `json:"qr_code"` Note string `json:"note"` TimeDesc string `json:"time_desc"` NoteTitle string `json:"note_title"` NoteScore string `json:"note_score"` NoteLine string `json:"note_line"` NoteID string `json:"note_id"` NoteIDHazy string `json:"note_id_hazy"` Tip string `json:"tip"` Images []string `json:"images"` BaseSource NoteBaseSource `json:"base_source"` StyleNoteLine string `json:"style_note_line"` }
NoteFPart Note FPart
type NotesCount ¶
type NotesExtra ¶
type NotesExtra struct { OldClassID int `json:"OldClassID"` OldClassType int `json:"OldClassType"` ArticleTitle string `json:"article_title"` AuthorName string `json:"author_name"` BookAuthor string `json:"book_author"` BookId int `json:"book_id"` BookIsOldVersion int `json:"book_is_old_version"` BookName string `json:"book_name"` BookShelfStatus int `json:"book_shelf_status"` ColumnTitle string `json:"column_title"` Images []interface{} `json:"images"` ImagesSuffix []interface{} `json:"images_suffix"` Img string `json:"img"` LogId string `json:"log_id"` ResourceIcon string `json:"resource_icon"` ScoreDesc string `json:"score_desc"` ScoreStr string `json:"score_str"` SourceId int `json:"source_id"` SourceSubTitle string `json:"source_sub_title"` SourceTitle string `json:"source_title"` SourceType int `json:"source_type"` SourceTypeName string `json:"source_type_name"` SubTitle string `json:"sub_title"` Title string `json:"title"` Tname string `json:"tname"` IsVipBook int `json:"is_vip_book,omitempty"` LogType string `json:"log_type,omitempty"` ColumnIntro string `json:"column_intro"` ViewType int `json:"view_type"` AudioIdAlias string `json:"audio_id_alias"` }
type NotesList ¶
type NotesList struct { HasMore bool `json:"has_more"` List []interface{} `json:"list"` NoteDetailList []NoteDetail `json:"note_detail_list"` PresenterUID []interface{} `json:"presenter_uid"` PresenterUIDHazy []string `json:"presenter_uid_hazy"` }
NotesList topic NotesList
type NotesTimeline ¶
type NotesTimeline struct { IsMore bool `json:"is_more"` MaxId string `json:"max_id"` Notes []NoteDetail `json:"notes"` }
type NotesTopicInfo ¶
type NotesUser ¶
type NotesUser struct { Id string `json:"id"` Uid int `json:"uid"` Name string `json:"name"` Avatar string `json:"avatar"` Follow int `json:"follow"` IsV int `json:"isV"` Slogan string `json:"slogan"` Vinfo string `json:"Vinfo"` StudentId int `json:"student_id"` IsPoster bool `json:"is_poster"` Qrcode string `json:"qrcode"` LogId string `json:"log_id"` LogType string `json:"log_type"` UidHazy string `json:"uid_hazy"` NoteIdHazy string `json:"note_id_hazy"` Role string `json:"role"` Attribution string `json:"attribution"` }
type OdobCard ¶
type OdobCard struct { AvailableBuy bool `json:"available_buy"` CanGift int `json:"can_gift"` CardType int `json:"card_type"` ContractTemplate string `json:"contract_template"` Cover string `json:"cover"` CreatedAt string `json:"created_at"` Days int `json:"days"` Description string `json:"description"` Device string `json:"device"` DiscountTip string `json:"discount_tip"` Displayed int `json:"displayed"` FirstMonthPrice string `json:"first_month_price"` ID int `json:"id"` IosSwitch bool `json:"ios_switch"` IsFirstSubscribe bool `json:"is_first_subscribe"` IsSubscribed int `json:"is_subscribed"` MaxNum int `json:"max_num"` Name string `json:"name"` OriginPrice string `json:"origin_price"` Price string `json:"price"` PriceDesc string `json:"price_desc"` Ptype int64 `json:"ptype"` Rights []OdobRight `json:"rights"` Selected int `json:"selected"` Sku string `json:"sku"` SortNo int `json:"sort_no"` Status int `json:"status"` StyleType int `json:"style_type"` SubscribeDesc string `json:"subscribe_desc"` SubscribedFlag string `json:"subscribed_flag"` Type int `json:"type"` UpdatedAt string `json:"updated_at"` UsedCardCount int `json:"used_card_count"` UserMaxBuyCount int `json:"user_max_buy_count"` WelfareInfo string `json:"welfare_info"` }
type OdobUser ¶
type OdobUser struct { Avatar string `json:"avatar"` AvatarS string `json:"avatar_s"` BeginTime int `json:"begin_time"` CanGivenCount int `json:"can_given_count"` CardID int `json:"card_id"` DdURL string `json:"dd_url"` EndTime int64 `json:"end_time"` EnterpriseEndTime int `json:"enterprise_end_time"` ErrTips string `json:"err_tips"` ExpireTime int `json:"expire_time"` GivenCardCount int `json:"given_card_count"` IsExpire bool `json:"is_expire"` IsVip bool `json:"is_vip"` Nickname string `json:"nickname"` PriceDesc string `json:"price_desc"` SavePrice string `json:"save_price"` Slogan string `json:"slogan"` SurplusTime int64 `json:"surplus_time"` TotalCount int `json:"total_count"` UID int `json:"uid"` VStateValue int `json:"v_state_value"` WeekCount int `json:"week_count"` }
type ProductSimple ¶
type ProductSimple struct { ProductType int `json:"product_type"` ProductEnid string `json:"product_enid"` Title string `json:"title"` Intro string `json:"intro"` Introduction string `json:"introduction"` IndexImage string `json:"index_image"` Score string `json:"score"` UserScoreCount int `json:"user_score_count"` HorizontalImage string `json:"horizontal_image"` LearnUserCount int `json:"learn_user_count"` AuthorList []string `json:"author_list"` TrackInfo string `json:"trackinfo"` LogType string `json:"log_type"` }
type QrCodeResp ¶
type Quality ¶
type Quality struct { Desc string `json:"desc"` List []QualityUser `json:"list"` Paytime string `json:"paytime"` }
type QualityUser ¶
type RTab ¶
type RTab struct { Id int `json:"id"` Idstr string `json:"idstr"` Name string `json:"name"` Rank int `json:"rank"` Status int `json:"status"` CreateTime int `json:"create_time"` UpdateTime int `json:"update_time"` FinishTime int `json:"finish_time"` Type int `json:"type"` IsHot int `json:"is_hot"` IsTop int `json:"is_top"` TrackInfo string `json:"track_info"` SearchKey string `json:"search_key"` }
type ReplierInfo ¶
type ReplierInfo struct { ReplierUID int `json:"replier_uid"` ReplierName string `json:"replier_name"` ReplierImg string `json:"replier_img"` ReplierIntro string `json:"replier_intro"` ReplierVStatus bool `json:"replier_v_status"` ReplierVStateValue int `json:"replier_v_state_value"` ReplierTitle string `json:"replier_title"` }
ReplierInfo Replier Info
type Response ¶
type Response struct { H respH `json:"h"` C respC `json:"c"` }
Response dedao success response
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service dedao service
func (*Service) AlgoFilter ¶
func (s *Service) AlgoFilter(param AlgoFilterParam) (resp *AlgoFilterResp, err error)
func (*Service) AlgoProduct ¶
func (s *Service) AlgoProduct(param AlgoFilterParam) (resp *AlgoProductResp, err error)
func (*Service) ArticleCommentList ¶
func (s *Service) ArticleCommentList(id, sort string, page, limit, sType int) (list *ArticleCommentList, err error)
ArticleCommentList get article comment list
func (*Service) ArticleDetail ¶
func (s *Service) ArticleDetail(token, id, appID string) (detail *ArticleDetail, err error)
ArticleDetail get article detail
func (*Service) ArticleInfo ¶
func (s *Service) ArticleInfo(enid string, aType int) (info *ArticleInfo, err error)
ArticleInfo get article info enid article enid, aType 1-course article, 2-odob article
func (*Service) ArticleList ¶
func (s *Service) ArticleList(id, chapterID string, count, maxID int) (list *ArticleList, err error)
ArticleList get class article list
func (*Service) ArticlePoint ¶
func (s *Service) ArticlePoint(id, pType string) (detail *ArticleDetail, err error)
ArticlePoint get article point
func (*Service) AudioByAlias ¶
AudioByAlias get article audio info
func (*Service) AudioDetail ¶
func (s *Service) AudioDetail(ID string) (detail *AudioInfoResp, err error)
AudioDetail get odob introduce
func (*Service) AudioDetailAlias ¶
AudioDetailAlias get odob audio info
func (*Service) CheckLogin ¶
func (s *Service) CheckLogin(token, qrcode string) (check *CheckLoginResp, cookie string, err error)
func (*Service) CourseCount ¶
CourseCount 获取课程数量 by 分类
func (*Service) CourseDetail ¶
CourseDetail get course list
func (*Service) CourseInfo ¶
func (s *Service) CourseInfo(enid string) (info *CourseInfo, err error)
CourseInfo get course info
func (*Service) CourseList ¶
func (s *Service) CourseList(category, order string, page, limit int) (list *CourseList, err error)
CourseList get course list by page
func (*Service) CourseListAll ¶
func (s *Service) CourseListAll(category, order string) (list *CourseList, err error)
CourseListAll get all course list
func (*Service) CourseType ¶
func (s *Service) CourseType() (list *CourseCategoryList, err error)
CourseType get course type list
func (*Service) EbookCommentList ¶
func (s *Service) EbookCommentList(id, sort string, page, limit int) (list *EbookCommentList, err error)
EbookCommentList get ebook comment list sort like_count
func (*Service) EbookDetail ¶
func (s *Service) EbookDetail(enid string) (detail *EbookDetail, err error)
EbookDetail get ebook detail
func (*Service) EbookPages ¶
func (*Service) EbookReadToken ¶
EbookReadToken get ebook read token
func (*Service) EbookShelfAdd ¶
func (s *Service) EbookShelfAdd(ids []string) (resp *EbookShelfAddResp, err error)
EbookShelfAdd add ebook shelf
func (*Service) EbookShelfRemove ¶
func (s *Service) EbookShelfRemove(ids []string) (resp *EbookShelfAddResp, err error)
EbookShelfRemove remove from ebook shelf
func (*Service) EbookUserInfo ¶
func (s *Service) EbookUserInfo() (info *EbookVIPInfo, err error)
EbookUserInfo get ebook vip info
func (*Service) GetHomeInitialState ¶
func (s *Service) GetHomeInitialState() (state HomeInitState, err error)
func (*Service) GetVolcPlayAuthToken ¶
func (s *Service) GetVolcPlayAuthToken(mediaIDStr, securityToken string) (info *MediaVolc, err error)
GetVolcPlayAuthToken get 火山引擎点播 Vid+PlayAuthToken
func (*Service) GetVolcPlayInfo ¶
func (s *Service) GetVolcPlayInfo(query string) (info *VodPlayInfoResp, err error)
GetVolcPlayInfo 火山引擎点播
func (*Service) LiveTabList ¶
func (s *Service) LiveTabList() (list *LiveTabList, err error)
func (*Service) LoginAccessToken ¶
LoginAccessToken get login access token
func (*Service) OdobShelfAdd ¶
func (s *Service) OdobShelfAdd(ids []string) (resp *EbookShelfAddResp, err error)
OdobShelfAdd add ebook shelf
func (*Service) OdobUserInfo ¶
OdobUserInfo get odob vip info
func (*Service) SunflowerLabelContent ¶
func (s *Service) SunflowerLabelContent(enID string, nType, page, pageSize int) (list *SunflowerContent, err error)
SunflowerLabelContent 首页导航标签内容列表 nType 2-好看又好查的电子书, 4-精选课程 page default=0 pageSize default=4
func (*Service) SunflowerLabelList ¶
func (s *Service) SunflowerLabelList(nType int) (list *SunflowerLabelList, err error)
SunflowerLabelList 首页导航标签列表 nType 2-好看又好查的电子书, 4-精选课程
func (*Service) SunflowerResourceList ¶
func (s *Service) SunflowerResourceList() (list *SunflowerResourceList, err error)
SunflowerResourceList 首页免费专区
func (*Service) TopicDetail ¶
func (s *Service) TopicDetail(id string) (detail *TopicDetail, err error)
TopicDetail topic detail by id hazy
func (*Service) TopicNotesList ¶
func (s *Service) TopicNotesList(id string, isElected bool, page, limit int) (list *NotesList, err error)
TopicNotesList Topic NotesList
func (*Service) TopicNotesTimeline ¶
func (s *Service) TopicNotesTimeline(maxID string) (list *NotesTimeline, err error)
TopicNotesTimeline Topic timeline
type SunflowerContent ¶
type SunflowerLabelList ¶
type SunflowerLabelList struct {
List []Navigation `json:"list"`
}
type SunflowerResource ¶
type SunflowerResource struct { Id int `json:"id"` Enid string `json:"enid"` Name string `json:"name"` Intro string `json:"intro"` Logo string `json:"logo"` ProductType int `json:"product_type"` ProductId int `json:"product_id"` Score float64 `json:"score"` ClassType int `json:"class_type"` Status int `json:"status"` }
type SunflowerResourceList ¶
type SunflowerResourceList struct {
List []SunflowerResource `json:"list"`
}
type TopicAll ¶
type TopicAll struct { HasMore bool `json:"has_more"` List []TopicIntro `json:"list"` }
TopicAll topic all
type TopicDetail ¶
type TopicDetail struct { TopicIntro Presenters []TopicPresenter `json:"presenters"` TopArea []TopicTopArea `json:"top_area"` CreateTime int `json:"create_time"` UpdateTime int `json:"update_time"` State int `json:"state"` Ddurl string `json:"ddurl"` TopicIDStr string `json:"topic_id_str"` LastNotesID string `json:"last_notes_id"` LastNotesIDHazy string `json:"last_notes_id_hazy"` LastNotesUID string `json:"last_notes_uid"` LastNotesUIDHazy string `json:"last_notes_uid_hazy"` LastNotesContent string `json:"last_notes_content"` LastUpdateTime int `json:"last_update_time"` }
TopicDetail topic detail
type TopicIntro ¶
type TopicIntro struct { NotesTopicID string `json:"notes_topic_id"` TopicIDHazy string `json:"topic_id_hazy"` Name string `json:"name"` Img string `json:"img"` Topmost bool `json:"topmost"` Tag int `json:"tag"` Intro string `json:"intro"` ViewCount int `json:"view_count"` NotesCount int `json:"notes_count"` HasNewNotes bool `json:"has_new_notes"` UserState int `json:"user_state"` LogID string `json:"log_id"` LogType string `json:"log_type"` }
TopicIntro topic intro
type TopicPresenter ¶
type TopicPresenter struct { ID int `json:"id"` IDHazy string `json:"id_hazy"` UID int `json:"uid"` UIDHazy string `json:"uid_hazy"` IsV int `json:"isV"` Name string `json:"name"` Avatar string `json:"avatar"` TopicCount int `json:"topic_count"` Icon string `json:"icon"` Relation int `json:"relation"` }
TopicPresenter topic presenter
type TopicSummary ¶
type TopicTopArea ¶
type TopicTopArea struct { ID int `json:"id"` IDHazy string `json:"id_hazy"` Icon string `json:"icon"` Title string `json:"title"` URL string `json:"url"` State int `json:"state"` IndexNum int `json:"index_num"` }
TopicTopArea Topic TopArea
type User ¶
type User struct { Nickname string `json:"nickname"` Avatar string `json:"avatar"` TodayStudyTime int `json:"today_study_time"` StudySerialDays int `json:"study_serial_days"` IsV int `JSON:"is_v"` VIPUser VIPUser `json:"vip_user"` IsTeacher int `json:"is_teacher"` UIDHazy string `json:"uid_hazy"` }
User user info
type Video ¶
type Video struct { Token string `json:"token"` TokenVersion int `json:"token_version"` CoverImg string `json:"cover_img"` DdMediaID int64 `json:"dd_media_id"` DdMediaIDStr string `json:"dd_media_id_str"` Duration int `json:"duration"` Bitrate480 string `json:"bitrate_480"` Bitrate480Size int `json:"bitrate_480_size"` Bitrate480Audio string `json:"bitrate_480_audio"` Bitrate720 string `json:"bitrate_720"` Bitrate720Size int `json:"bitrate_720_size"` Bitrate720Audio string `json:"bitrate_720_audio"` Bitrate1080 string `json:"bitrate_1080"` Bitrate1080Size int `json:"bitrate_1080_size"` Bitrate1080Audio string `json:"bitrate_1080_audio"` IsDrm bool `json:"is_drm"` ListenProgress float64 `json:"listen_progress"` ListenFinished bool `json:"listen_finished"` LogID string `json:"log_id"` LogType string `json:"log_type"` Caption string `json:"caption"` }
type VideoTrack ¶
type VideoTrack struct { TrackId int `json:"track_id"` TrackType int `json:"track_type"` TrackTypeTag string `json:"track_type_tag"` Duration int `json:"duration"` Formats []VolcFormat `json:"formats"` }
type VodAdaptiveInfo ¶
type VodPlayInfo ¶
type VodPlayInfo struct { FileId string `json:"FileId"` Md5 string `json:"Md5"` FileType string `json:"FileType"` Format string `json:"Format"` Codec string `json:"Codec"` Definition string `json:"Definition"` MainPlayUrl string `json:"MainPlayUrl"` BackupPlayUrl string `json:"BackupPlayUrl"` Bitrate int `json:"Bitrate"` Width int `json:"Width"` Height int `json:"Height"` Size int `json:"Size"` CheckInfo string `json:"CheckInfo"` IndexRange string `json:"IndexRange"` InitRange string `json:"InitRange"` PlayAuth string `json:"PlayAuth"` PlayAuthId string `json:"PlayAuthId"` LogoType string `json:"LogoType"` Quality string `json:"Quality"` BarrageMaskOffset string `json:"BarrageMaskOffset"` Duration float64 `json:"Duration"` KeyFrameAlignment string `json:"KeyFrameAlignment"` Volume interface{} `json:"Volume"` }
type VodPlayInfoModel ¶
type VodPlayInfoModel struct { Version int `json:"Version"` Vid string `json:"Vid"` Status int `json:"Status"` PosterUrl string `json:"PosterUrl"` Duration float64 `json:"Duration"` FileType string `json:"FileType"` EnableAdaptive bool `json:"EnableAdaptive"` TotalCount int `json:"TotalCount"` AdaptiveInfo VodAdaptiveInfo `json:"AdaptiveInfo"` PlayInfoList []VodPlayInfo `json:"PlayInfoList"` ThumbInfoList []VodThumbInfo `json:"ThumbInfoList"` BarrageMaskUrl string `json:"BarrageMaskUrl"` SubtitleInfoList []interface{} `json:"SubtitleInfoList"` }
type VodPlayInfoResp ¶
type VodPlayInfoResp struct { ResponseMetadata VodRespMetadata `json:"ResponseMetadata"` Result VodPlayInfoModel `json:"Result"` }
VodPlayInfoResp 获取播放地址 https://www.volcengine.com/docs/4/2918#vodplayinfomodel
type VodRespMetadata ¶
type VodThumbInfo ¶
type VolcFormat ¶
type WendaExtInfo ¶
type WendaExtInfo struct {
AnswerID int `json:"answer_id"`
}