Esempio n. 1
0
func New(p page.Page) (Parser, error) {
	err := p.Validate()
	if err != nil {
		return nil, err
	}

	var pageParser Parser
	switch p.Type {
	case page.PageTypeCatalogs:
		pageParser, err = newPageCatalogsParser(p)
	}
	return pageParser, err
}
Esempio n. 2
0
func newPageCatalogsParser(p page.Page) (Parser, error) {
	//	root,err := xmlpath.ParseHTML(p.Reader())
	//	if err != nil {
	//		return nil,err
	//	}
	root, err := goquery.NewDocumentFromReader(p.Reader())
	if err != nil {
		return nil, err
	}
	common := &pageCommonParser{root}
	pr := &pageCatalogsParser{common, "", ""}
	pr.initPaths()
	return Parser(pr), nil
}