Versions in this module Expand all Collapse all v0 v0.2.0 Mar 30, 2026 Changes in this version type Nodes + func (ns Nodes) Filter(fn func(*Builder) bool) Nodes + type StringBuilder struct + func (sb *StringBuilder) Map(fn func(string) string) *StringBuilder + func (sb *StringBuilder) Replace(old, new string) *StringBuilder + func (sb *StringBuilder) TrimSpace() *StringBuilder v0.1.1 Mar 26, 2026 Changes in this version + var ErrIndexOutOfBounds = errors.New("twig: index out of bounds") + var ErrInvalidSelector = errors.New("twig: invalid selector") + var ErrNotFound = errors.New("twig: selector matched no elements") + var ErrParseFailed = errors.New("twig: failed to parse HTML") + func Must[T any](v T, err error) T + type Builder struct + func (b *Builder) Attr(name string) (string, error) + func (b *Builder) CSS(selector string) *Builder + func (b *Builder) CSSAll(selector string) Nodes + func (b *Builder) Child(index ...int) *Builder + func (b *Builder) Children() Nodes + func (b *Builder) Extract(schema Schema) (Result, error) + func (b *Builder) HTML() (string, error) + func (b *Builder) HasClass(name string) (bool, error) + func (b *Builder) Href() (string, error) + func (b *Builder) Next() *Builder + func (b *Builder) NextAll() Nodes + func (b *Builder) NodeType() (html.NodeType, error) + func (b *Builder) Parent() *Builder + func (b *Builder) Parents() Nodes + func (b *Builder) Prev() *Builder + func (b *Builder) PrevAll() Nodes + func (b *Builder) Siblings() Nodes + func (b *Builder) Src() (string, error) + func (b *Builder) Tag() (string, error) + func (b *Builder) Text() (string, error) + func (b *Builder) XPath(expr string) *Builder + func (b *Builder) XPathAll(expr string) Nodes + type ExtractionError struct + Fields map[string]error + func (e *ExtractionError) Error() string + type Extractor struct + type ExtractorBuilder struct + func Field() *ExtractorBuilder + func (eb *ExtractorBuilder) Attr(name string) Extractor + func (eb *ExtractorBuilder) CSS(sel string) *ExtractorBuilder + func (eb *ExtractorBuilder) Child(index ...int) *ExtractorBuilder + func (eb *ExtractorBuilder) HTML() Extractor + func (eb *ExtractorBuilder) Href() Extractor + func (eb *ExtractorBuilder) Next() *ExtractorBuilder + func (eb *ExtractorBuilder) Parent() *ExtractorBuilder + func (eb *ExtractorBuilder) Prev() *ExtractorBuilder + func (eb *ExtractorBuilder) Src() Extractor + func (eb *ExtractorBuilder) Text() Extractor + func (eb *ExtractorBuilder) XPath(expr string) *ExtractorBuilder + type Nodes struct + func (ns Nodes) Any(fn func(*Builder) bool) (bool, error) + func (ns Nodes) AttrAll(name string) ([]string, error) + func (ns Nodes) CSS(selector string) Nodes + func (ns Nodes) Each(fn func(i int, b *Builder)) + func (ns Nodes) Every(fn func(*Builder) bool) (bool, error) + func (ns Nodes) ExtractAll(schema Schema) ([]Result, error) + func (ns Nodes) First() *Builder + func (ns Nodes) Get(index int) *Builder + func (ns Nodes) Last() *Builder + func (ns Nodes) Len() (int, error) + func (ns Nodes) None() (bool, error) + func (ns Nodes) Some() (bool, error) + func (ns Nodes) TextAll() ([]string, error) + func (ns Nodes) XPath(expr string) Nodes + type Page struct + func NewPage(rawHTML string, baseURL string) (*Page, error) + func (p *Page) Body() *Builder + func (p *Page) CSS(selector string) *Builder + func (p *Page) CSSAll(selector string) Nodes + func (p *Page) Extract(schema Schema) (Result, error) + func (p *Page) Head() *Builder + func (p *Page) XPath(expr string) *Builder + func (p *Page) XPathAll(expr string) Nodes + type Result map[string]string + type Schema map[string]Extractor