func (p *Page) URLs() URLs {
	return p.resolve(`a[href]`)
}
URLs returns all URLs on the page.

The method skips any invalid URLs.
package ant
import (
	"fmt"
	"io"
	"io/ioutil"
	"net/http"
	"net/url"
	"sync"
	"github.com/yields/ant/internal/scan"
	"github.com/yields/ant/internal/selectors"
	"golang.org/x/net/html"
)
type Page struct {
	URL    *url.URL
	Header http.Header
	body   io.ReadCloser
	root   *html.Node
	once   sync.Once
	err    error
}
func (p *Page) parse() error {
	p.once.Do(func() {
		if p.root, p.err = html.Parse(p.body); p.err != nil {
			p.err = fmt.Errorf("ant: parse html %q - %w", p.URL, p.err)
		}
		p.close()
	})
	return p.err
}
func (p *Page) Query(selector string) List {
	var ret List
	if err := p.parse(); err != nil {
		return ret
	}
	if s, err := selectors.Compile(selector); err == nil {
		ret = s.MatchAll(p.root)
	}
	return ret
}
func (p *Page) Text(selector string) string {
	return p.Query(selector).Text()
}