novel

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2022 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HTMLContent added in v0.4.1

func HTMLContent(ctx context.Context, renderer ContentRenderer, content string) (ret string, err error)

HTMLContent render novel content to html. format from https://www.pixiv.net/novel/upload.php

Types

type ContentRenderer added in v0.4.1

type ContentRenderer interface {
	Image(ctx context.Context, id string, index int) (string, error)
	Paragraph(ctx context.Context, text string) (string, error)
	NewPage(ctx context.Context, index int) (string, error)
	Ruby(ctx context.Context, ruby, rt string) (string, error)
	Chapter(ctx context.Context, name string) (string, error)
	JumpURI(ctx context.Context, title, uri string) (string, error)
	JumpPage(ctx context.Context, page int) (string, error)
	EmbeddedImage(ctx context.Context, id string) (string, error)
}

ContentRenderer can render novel content

type Novel

type Novel struct {
	ID             string
	Title          string
	Description    string
	CoverURL       string
	Content        string
	Created        time.Time
	Uploaded       time.Time
	Author         user.User
	Series         Series
	Tags           []string
	EmbeddedImages map[string]image.URLs

	TextCount     int64
	PageCount     int64
	CommentCount  int64
	LikeCount     int64
	ViewCount     int64
	BookmarkCount int64
}

Novel data

func (*Novel) Fetch

func (i *Novel) Fetch(ctx context.Context) (err error)

Fetch additional data from pixiv single novel api (require login),

func (Novel) HTMLContent added in v0.4.1

func (i Novel) HTMLContent(ctx context.Context, renderer ContentRenderer) (string, error)

HTMLContent from content, provide nil as renderer to use default renderer,

func (Novel) URL added in v0.3.0

func (i Novel) URL(ctx context.Context) *url.URL

URL to view web page.

type SearchOption added in v0.4.0

type SearchOption func(*SearchOptions)

SearchOption mutate SearchOptions

func SearchOptionPage added in v0.4.0

func SearchOptionPage(page int) SearchOption

SearchOptionPage change page to retrive

type SearchOptions added in v0.4.0

type SearchOptions struct {
	Page int
}

SearchOptions for Search

type SearchResult

type SearchResult struct {
	JSON gjson.Result
}

SearchResult holds search data and provide useful methods.

func Search(ctx context.Context, query string, opts ...SearchOption) (result SearchResult, err error)

Search calls pixiv novel search api.

func (SearchResult) ForEach

func (r SearchResult) ForEach(iterator func(key, value gjson.Result) bool)

ForEach iterates through novel data items.

func (SearchResult) Novels

func (r SearchResult) Novels() []Novel

Novels appeared in the search result.

type Series

type Series struct {
	ID    string
	Title string
}

Series data

func (Series) URL added in v0.3.0

func (i Series) URL() *url.URL

URL to view web page.

func (Series) URLWithClient added in v0.3.0

func (i Series) URLWithClient(c client.Client) *url.URL

URLWithClient to view web page.

type SimpleContentRenderer added in v0.4.1

type SimpleContentRenderer struct {
	EmbeddedImages map[string]image.URLs
}

SimpleContentRenderer is a simple implementation of ContentRenderer

func (SimpleContentRenderer) Chapter added in v0.4.1

func (r SimpleContentRenderer) Chapter(ctx context.Context, name string) (ret string, err error)

Chapter implements ContentRenderer

func (SimpleContentRenderer) EmbeddedImage added in v0.6.0

func (r SimpleContentRenderer) EmbeddedImage(ctx context.Context, id string) (ret string, err error)

EmbeddedImage implements ContentRenderer

func (SimpleContentRenderer) Image added in v0.4.1

func (r SimpleContentRenderer) Image(ctx context.Context, id string, index int) (ret string, err error)

Image implements ContentRenderer

func (SimpleContentRenderer) JumpPage added in v0.4.1

func (r SimpleContentRenderer) JumpPage(ctx context.Context, page int) (ret string, err error)

JumpPage implements ContentRenderer

func (SimpleContentRenderer) JumpURI added in v0.4.1

func (r SimpleContentRenderer) JumpURI(ctx context.Context, title, uri string) (ret string, err error)

JumpURI implements ContentRenderer

func (SimpleContentRenderer) NewPage added in v0.4.1

func (r SimpleContentRenderer) NewPage(ctx context.Context, index int) (ret string, err error)

NewPage implements ContentRenderer

func (SimpleContentRenderer) Paragraph added in v0.4.1

func (r SimpleContentRenderer) Paragraph(ctx context.Context, text string) (ret string, err error)

Paragraph implements ContentRenderer

func (SimpleContentRenderer) Ruby added in v0.4.1

func (r SimpleContentRenderer) Ruby(ctx context.Context, ruby, rt string) (string, error)

Ruby implements ContentRenderer

Jump to

Keyboard shortcuts

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