html

package
v0.8.2 Latest Latest
Warning

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

Go to latest
Published: Aug 5, 2019 License: Apache-2.0 Imports: 12 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

View Source
var PagingType = core.NewType("paging")

Functions

func AttributeGet added in v0.7.0

func AttributeGet(ctx context.Context, args ...core.Value) (core.Value, error)

AttributeGet gets single or more attribute(s) of a given element. @param el (HTMLElement) - Target element. @param names (...String) - Attribute name(s). @returns Object - Key-value pairs of attribute values.

func AttributeRemove added in v0.7.0

func AttributeRemove(ctx context.Context, args ...core.Value) (core.Value, error)

AttributeRemove removes single or more attribute(s) of a given element. @param el (HTMLElement) - Target element. @param names (...String) - Attribute name(s).

func AttributeSet added in v0.7.0

func AttributeSet(ctx context.Context, args ...core.Value) (core.Value, error)

AttributeSet sets or updates a single or more attribute(s) of a given element. @param el (HTMLElement) - Target element. @param nameOrObj (String | Object) - Attribute name or an object representing a key-value pair of attributes. @param value (String) - If a second parameter is a string value, this parameter represent an attribute value.

func Click

func Click(ctx context.Context, args ...core.Value) (core.Value, error)

Click dispatches click event on a given element @param source (Open | GetElement) - Event source. @param selector (String, optional) - Optional selector. Only used when a document instance is passed.

func ClickAll

func ClickAll(ctx context.Context, args ...core.Value) (core.Value, error)

ClickAll dispatches click event on all matched element @param source (Open) - Open. @param selector (String) - Selector. @returns (Boolean) - Returns true if matched at least one element.

func CookieDel added in v0.7.0

func CookieDel(ctx context.Context, args ...core.Value) (core.Value, error)

CookieSet gets a cookie from a given page by name. @param page (HTMLPage) - Target page. @param cookie (...HTTPCookie|String) - Cookie or cookie name to delete.

func CookieGet added in v0.7.0

func CookieGet(ctx context.Context, args ...core.Value) (core.Value, error)

CookieSet gets a cookie from a given page by name. @param page (HTMLPage) - Target page. @param name (String) - Cookie or cookie name to delete.

func CookieSet added in v0.7.0

func CookieSet(ctx context.Context, args ...core.Value) (core.Value, error)

CookieSet sets cookies to a given page @param page (HTMLPage) - Target page. @param cookie... (HTTPCookie) - Target cookies.

func Download added in v0.3.0

func Download(_ context.Context, args ...core.Value) (core.Value, error)

Download a resource from the given GetURL. @param GetURL (String) - GetURL to download. @returns data (Binary) - Returns a base64 encoded string in binary format.

func Element

func Element(ctx context.Context, args ...core.Value) (core.Value, error)

GetElement finds an element by a given CSS selector. Returns NONE if element not found. @param docOrEl (HTMLDocument|HTMLElement) - Parent document or element. @param selector (String) - CSS selector. @returns (HTMLElement | None) - Returns an HTMLElement if found, otherwise NONE.

func ElementExists added in v0.6.0

func ElementExists(ctx context.Context, args ...core.Value) (core.Value, error)

ElementExists returns a boolean value indicating whether there is an element matched by selector. @param docOrEl (HTMLDocument|HTMLNode) - Parent document or element. @param selector (String) - CSS selector. @returns (Boolean) - A boolean value indicating whether there is an element matched by selector.

func Elements

func Elements(ctx context.Context, args ...core.Value) (core.Value, error)

Elements finds HTML elements by a given CSS selector. Returns an empty array if element not found. @param docOrEl (HTMLDocument|HTMLNode) - Parent document or element. @param selector (String) - CSS selector. @returns (Array) - Returns an array of found HTML element.

func ElementsCount

func ElementsCount(ctx context.Context, args ...core.Value) (core.Value, error)

ElementsCount returns a number of found HTML elements by a given CSS selector. Returns an empty array if element not found. @param docOrEl (HTMLDocument|HTMLNode) - Parent document or element. @param selector (String) - CSS selector. @returns (Int) - A number of found HTML elements by a given CSS selector.

func Focus added in v0.8.0

func Focus(ctx context.Context, args ...core.Value) (core.Value, error)

FOCUS Calls focus on the element. @param target (HTMLPage | HTMLDocument | HTMLElement) - Target node. @param selector (String, optional) - Optional CSS selector. Required when target is HTMLPage or HTMLDocument.

func GetInnerHTML added in v0.8.0

func GetInnerHTML(ctx context.Context, args ...core.Value) (core.Value, error)

GetInnerHTML Returns inner HTML string of a given or matched by CSS selector element @param doc (Open|GetElement) - Parent document or element. @param selector (String, optional) - String of CSS selector. @returns (String) - Inner HTML string if an element found, otherwise empty string.

func GetInnerHTMLAll added in v0.8.0

func GetInnerHTMLAll(ctx context.Context, args ...core.Value) (core.Value, error)

GetInnerHTMLAll returns an array of inner HTML strings of matched elements. @param doc (HTMLDocument|HTMLElement) - Parent document or element. @param selector (String) - String of CSS selector. @returns (String) - An array of inner HTML strings if any element found, otherwise empty array.

func GetInnerText added in v0.8.0

func GetInnerText(ctx context.Context, args ...core.Value) (core.Value, error)

GetInnerText returns inner text string of a given or matched by CSS selector element @param doc (HTMLDocument|HTMLElement) - Parent document or element. @param selector (String, optional) - String of CSS selector. @returns (String) - Inner text if an element found, otherwise empty string.

func GetInnerTextAll added in v0.8.0

func GetInnerTextAll(ctx context.Context, args ...core.Value) (core.Value, error)

GetInnerTextAll returns an array of inner text of matched elements. @param doc (HTMLDocument|HTMLElement) - Parent document or element. @param selector (String) - String of CSS selector. @returns (String) - An array of inner text if any element found, otherwise empty array.

func Hover added in v0.5.0

func Hover(ctx context.Context, args ...core.Value) (core.Value, error)

Hover fetches an element with selector, scrolls it into view if needed, and then uses page.mouse to hover over the center of the element. If there's no element matching selector, the method returns an error. @param docOrEl (HTMLDocument|HTMLElement) - Target document or element. @param selector (String, options) - If document is passed, this param must represent an element selector.

func Input

func Input(ctx context.Context, args ...core.Value) (core.Value, error)

Input types a value to an underlying input element. @param source (Open | GetElement) - Event target. @param valueOrSelector (String) - Selector or a value. @param value (String) - Target value. @param delay (Int, optional) - Waits delay milliseconds between keystrokes @returns (Boolean) - Returns true if an element was found.

func MouseMoveXY added in v0.7.0

func MouseMoveXY(ctx context.Context, args ...core.Value) (core.Value, error)

MouseMoveXY moves mouse by given coordinates. @param doc (HTMLDocument) - HTML document. @param x (Int|Float) - X coordinate. @param y (Int|Float) - Y coordinate.

func Navigate(ctx context.Context, args ...core.Value) (core.Value, error)

Navigate navigates a given page to a new resource. The operation blocks the execution until the page gets loaded. Which means there is no need in WAIT_NAVIGATION function. @param page (HTMLPage) - Target page. @param url (String) - Target url to navigate. @param timeout (Int, optional) - Optional timeout. Default is 5000.

func NavigateBack(ctx context.Context, args ...core.Value) (core.Value, error)

NavigateBack navigates a given page back within its navigation history. The operation blocks the execution until the page gets loaded. If the history is empty, the function returns FALSE. @param page (HTMLPage) - Target page. @param entry (Int, optional) - Optional value indicating how many pages to skip. Default 1. @param timeout (Int, optional) - Optional timeout. Default is 5000. @returns (Boolean) - Returns TRUE if history exists and the operation succeeded, otherwise FALSE.

func NavigateForward(ctx context.Context, args ...core.Value) (core.Value, error)

NavigateForward navigates a given page forward within its navigation history. The operation blocks the execution until the page gets loaded. If the history is empty, the function returns FALSE. @param page (HTMLPage) - Target page. @param entry (Int, optional) - Optional value indicating how many pages to skip. Default 1. @param timeout (Int, optional) - Optional timeout. Default is 5000. @returns (Boolean) - Returns TRUE if history exists and the operation succeeded, otherwise FALSE.

func Open added in v0.8.0

func Open(ctx context.Context, args ...core.Value) (core.Value, error)

Open opens an HTML page by a given url. By default, loads a page by http call - resulted page does not support any interactions. @param params (Object) - Optional, An object containing the following properties :

		driver (String) - Optional, driver name.
     timeout (Int) - Optional, timeout.
     userAgent (String) - Optional, user agent.
     keepCookies (Boolean) - Optional, boolean value indicating whether to use cookies from previous sessions.
     	i.e. not to open a page in the Incognito mode.
     cookies (HTTPCookie) - Optional, set of HTTP cookies.
     headers (HTTPHeaders) - Optional, HTTP headers.
     viewport (Viewport) - Optional, viewport params.

@returns (HTMLPage) - Returns loaded HTML page.

func OpenOrCastPage added in v0.8.0

func OpenOrCastPage(ctx context.Context, value core.Value) (drivers.HTMLPage, bool, error)

func PDF

func PDF(ctx context.Context, args ...core.Value) (core.Value, error)

PDF print a PDF of the current page. @param target (HTMLPage|String) - Target page or url. @param params (Object) - Optional, An object containing the following properties :

Landscape (Bool) - Paper orientation. Defaults to false.
DisplayHeaderFooter (Bool) - Display header and footer. Defaults to false.
PrintBackground (Bool) - Print background graphics. Defaults to false.
Scale (Float64) - Scale of the webpage rendering. Defaults to 1.
PaperWidth (Float64) - Paper width in inches. Defaults to 8.5 inches.
PaperHeight (Float64) - Paper height in inches. Defaults to 11 inches.
MarginTop (Float64) - Top margin in inches. Defaults to 1cm (~0.4 inches).
MarginBottom (Float64) - Bottom margin in inches. Defaults to 1cm (~0.4 inches).
MarginLeft (Float64) - Left margin in inches. Defaults to 1cm (~0.4 inches).
MarginRight (Float64) - Right margin in inches. Defaults to 1cm (~0.4 inches).
PageRanges (String) - Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages.
IgnoreInvalidPageRanges (Bool) - to silently ignore invalid but successfully parsed page ranges, such as '3-2'. Defaults to false.
HeaderTemplate (String) - HTML template for the print header. Should be valid HTML markup with following classes used to inject printing values into them: - `date`: formatted print date - `title`: document title - `url`: document location - `pageNumber`: current page number - `totalPages`: total pages in the document For example, `<span class=title></span>` would generate span containing the title.
FooterTemplate (String) - HTML template for the print footer. Should use the same format as the `headerTemplate`.
PreferCSSPageSize (Bool) - Whether or not to prefer page size as defined by css. Defaults to false, in which case the content will be scaled to fit the paper size. *

@returns data (Binary) - Returns a base64 encoded string in binary format.

func Pagination added in v0.5.0

func Pagination(_ context.Context, args ...core.Value) (core.Value, error)

Pagination creates an iterator that goes through pages using CSS selector. The iterator starts from the current page i.e. it does not change the page on 1st iteration. That allows you to keep scraping logic inside FOR loop. @param doc (Open) - Target document. @param selector (String) - CSS selector for a pagination on the page.

func RegisterLib added in v0.8.0

func RegisterLib(ns core.Namespace) error

func Screenshot

func Screenshot(ctx context.Context, args ...core.Value) (core.Value, error)

Screenshot takes a screenshot of a given page. @param target (HTMLPage|String) - Target page or url. @param params (Object) - Optional, An object containing the following properties :

x (Float|Int) - Optional, X position of the viewport.
x (Float|Int) - Optional,Y position of the viewport.
width (Float|Int) - Optional, Width of the viewport.
height (Float|Int) - Optional, Height of the viewport.
format (String) - Optional, Either "jpeg" or "png".
quality (Int) - Optional, Quality, in [0, 100], only for jpeg format.

@returns data (Binary) - Returns a base64 encoded string in binary format.

func ScrollBottom added in v0.5.0

func ScrollBottom(ctx context.Context, args ...core.Value) (core.Value, error)

ScrollTop scrolls the document's window to its bottom. @param doc (HTMLDocument) - Target document.

func ScrollInto added in v0.5.0

func ScrollInto(ctx context.Context, args ...core.Value) (core.Value, error)

ScrollInto scrolls an element on. @param docOrEl (HTMLDocument|HTMLElement) - Target document or element. @param selector (String, options) - If document is passed, this param must represent an element selector.

func ScrollTop added in v0.5.0

func ScrollTop(ctx context.Context, args ...core.Value) (core.Value, error)

ScrollTop scrolls the document's window to its top. @param doc (HTMLDocument) - Target document.

func ScrollXY added in v0.7.0

func ScrollXY(ctx context.Context, args ...core.Value) (core.Value, error)

ScrollXY scrolls by given coordinates. @param doc (HTMLDocument) - HTML document. @param x (Int|Float) - X coordinate. @param y (Int|Float) - Y coordinate.

func Select added in v0.5.0

func Select(ctx context.Context, args ...core.Value) (core.Value, error)

Select selects a value from an underlying select element. @param source (Open | GetElement) - Event target. @param valueOrSelector (String | Array<String>) - Selector or a an array of strings as a value. @param value (Array<String) - Target value. Optional. @returns (Array<String>) - Returns an array of selected values.

func SetInnerHTML added in v0.8.0

func SetInnerHTML(ctx context.Context, args ...core.Value) (core.Value, error)

SetInnerHTML sets inner HTML string to a given or matched by CSS selector element @param doc (Open|GetElement) - Parent document or element. @param selector (String, optional) - String of CSS selector. @param innerHTML (String) - String of inner HTML.

func SetInnerText added in v0.8.0

func SetInnerText(ctx context.Context, args ...core.Value) (core.Value, error)

SetInnerText sets inner text string to a given or matched by CSS selector element @param doc (Open|GetElement) - Parent document or element. @param selector (String, optional) - String of CSS selector. @param innerText (String) - String of inner text.

func StyleGet added in v0.7.0

func StyleGet(ctx context.Context, args ...core.Value) (core.Value, error)

StyleGet gets single or more style attribute value(s) of a given element. @param el (HTMLElement) - Target element. @param names (...String) - Style name(s). @returns Object - Key-value pairs of style values.

func StyleRemove added in v0.7.0

func StyleRemove(ctx context.Context, args ...core.Value) (core.Value, error)

StyleRemove removes single or more style attribute value(s) of a given element. @param el (HTMLElement) - Target element. @param names (...String) - Style name(s).

func StyleSet added in v0.7.0

func StyleSet(ctx context.Context, args ...core.Value) (core.Value, error)

StyleSet sets or updates a single or more style attribute value of a given element. @param el (HTMLElement) - Target element. @param nameOrObj (String | Object) - Style name or an object representing a key-value pair of attributes. @param value (String) - If a second parameter is a string value, this parameter represent a style value.

func ValidatePageRanges

func ValidatePageRanges(pageRanges string) (bool, error)

func WaitAttribute added in v0.7.0

func WaitAttribute(ctx context.Context, args ...core.Value) (core.Value, error)

func WaitAttributeAll added in v0.7.0

func WaitAttributeAll(ctx context.Context, args ...core.Value) (core.Value, error)

WaitClassAll waits for a class to appear on all matched elements. Stops the execution until the navigation ends or operation times out. @param doc (HTMLDocument) - Parent document. @param selector (String) - String of CSS selector. @param class (String) - String of target CSS class. @param timeout (Int, optional) - Optional timeout.

func WaitClass

func WaitClass(ctx context.Context, args ...core.Value) (core.Value, error)

WaitClass waits for a class to appear on a given element. Stops the execution until the navigation ends or operation times out. @param docOrEl (HTMLDocument|HTMLElement) - Target document or element. @param selectorOrClass (String) - If document is passed, this param must represent an element selector. Otherwise target class. @param classOrTimeout (String|Int, optional) - If document is passed, this param must represent target class name. Otherwise timeout. @param timeout (Int, optional) - If document is passed, this param must represent timeout. Otherwise not passed.

func WaitClassAll

func WaitClassAll(ctx context.Context, args ...core.Value) (core.Value, error)

WaitClassAll waits for a class to appear on all matched elements. Stops the execution until the navigation ends or operation times out. @param doc (HTMLDocument) - Parent document. @param selector (String) - String of CSS selector. @param class (String) - String of target CSS class. @param timeout (Int, optional) - Optional timeout.

func WaitElement

func WaitElement(ctx context.Context, args ...core.Value) (core.Value, error)

WaitElement waits for element to appear in the DOM. Stops the execution until it finds an element or operation times out. @param doc (HTMLDocument) - Driver HTMLDocument. @param selector (String) - Target element's selector. @param timeout (Int, optional) - Optional timeout. Default 5000 ms.

func WaitNavigation

func WaitNavigation(ctx context.Context, args ...core.Value) (core.Value, error)

WaitNavigation waits for a given page to navigate to a new url. Stops the execution until the navigation ends or operation times out. @param page (HTMLPage) - Target page. @param timeout (Int, optional) - Optional timeout. Default 5000 ms.

func WaitNoAttribute added in v0.7.0

func WaitNoAttribute(ctx context.Context, args ...core.Value) (core.Value, error)

func WaitNoAttributeAll added in v0.7.0

func WaitNoAttributeAll(ctx context.Context, args ...core.Value) (core.Value, error)

WaitClassAll waits for a class to disappear on all matched elements. Stops the execution until the navigation ends or operation times out. @param doc (HTMLDocument) - Parent document. @param selector (String) - String of CSS selector. @param class (String) - String of target CSS class. @param timeout (Int, optional) - Optional timeout.

func WaitNoClass added in v0.7.0

func WaitNoClass(ctx context.Context, args ...core.Value) (core.Value, error)

WaitClass waits for a class to disappear on a given element. Stops the execution until the navigation ends or operation times out. @param docOrEl (HTMLDocument|HTMLElement) - Target document or element. @param selectorOrClass (String) - If document is passed, this param must represent an element selector. Otherwise target class. @param classOrTimeout (String|Int, optional) - If document is passed, this param must represent target class name. Otherwise timeout. @param timeout (Int, optional) - If document is passed, this param must represent timeout. Otherwise not passed.

func WaitNoClassAll added in v0.7.0

func WaitNoClassAll(ctx context.Context, args ...core.Value) (core.Value, error)

WaitClassAll waits for a class to disappear on all matched elements. Stops the execution until the navigation ends or operation times out. @param doc (HTMLDocument) - Parent document. @param selector (String) - String of CSS selector. @param class (String) - String of target CSS class. @param timeout (Int, optional) - Optional timeout.

func WaitNoElement added in v0.7.0

func WaitNoElement(ctx context.Context, args ...core.Value) (core.Value, error)

WaitNoElements waits for element to disappear in the DOM. Stops the execution until it does not find an element or operation times out. @param doc (HTMLDocument) - Driver HTMLDocument. @param selector (String) - Target element's selector. @param timeout (Int, optional) - Optional timeout. Default 5000 ms.

func WaitNoStyle added in v0.7.0

func WaitNoStyle(ctx context.Context, args ...core.Value) (core.Value, error)

func WaitNoStyleAll added in v0.7.0

func WaitNoStyleAll(ctx context.Context, args ...core.Value) (core.Value, error)

func WaitStyle added in v0.7.0

func WaitStyle(ctx context.Context, args ...core.Value) (core.Value, error)

func WaitStyleAll added in v0.7.0

func WaitStyleAll(ctx context.Context, args ...core.Value) (core.Value, error)

func XPath added in v0.8.0

func XPath(ctx context.Context, args ...core.Value) (core.Value, error)

XPath evaluates the XPath expression. @param source (HTMLPage | HTMLDocument | HTMLElement) - Target HTML object. @param expression (String) - XPath expression. @returns (Value) - Returns result of a given XPath expression.

Types

type PageLoadParams added in v0.8.0

type PageLoadParams struct {
	drivers.Params
	Driver  string
	Timeout time.Duration
}

type Paging added in v0.5.0

type Paging struct {
	// contains filtered or unexported fields
}

func (*Paging) Compare added in v0.5.0

func (p *Paging) Compare(_ core.Value) int64

func (*Paging) Copy added in v0.5.0

func (p *Paging) Copy() core.Value

func (*Paging) Hash added in v0.5.0

func (p *Paging) Hash() uint64

func (*Paging) Iterate added in v0.5.0

func (p *Paging) Iterate(_ context.Context) (core.Iterator, error)

func (*Paging) MarshalJSON added in v0.5.0

func (p *Paging) MarshalJSON() ([]byte, error)

func (*Paging) String added in v0.5.0

func (p *Paging) String() string

func (*Paging) Type added in v0.5.0

func (p *Paging) Type() core.Type

func (*Paging) Unwrap added in v0.5.0

func (p *Paging) Unwrap() interface{}

type PagingIterator added in v0.5.0

type PagingIterator struct {
	// contains filtered or unexported fields
}

func (*PagingIterator) Next added in v0.5.0

Jump to

Keyboard shortcuts

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