add a16z parser

This commit is contained in:
Asim Aslam
2021-02-27 20:47:46 +00:00
parent efee90ab12
commit f800662806

View File

@@ -10,6 +10,7 @@ import (
var ( var (
parsers = map[string]Parser{ parsers = map[string]Parser{
"a16z.com": a16zParser,
"cnbc.com": cnbcParser, "cnbc.com": cnbcParser,
"www.cnbc.com": cnbcParser, "www.cnbc.com": cnbcParser,
} }
@@ -29,7 +30,8 @@ func Parse(uri string) (string, error) {
return "", errors.New("no parser for url") return "", errors.New("no parser for url")
} }
func cnbcParser(url string) (string, error) { func classParser(class string) Parser {
return func(url string) (string, error) {
// Request the HTML page. // Request the HTML page.
res, err := http.Get(url) res, err := http.Get(url)
if err != nil { if err != nil {
@@ -48,5 +50,14 @@ func cnbcParser(url string) (string, error) {
return "", err return "", err
} }
return doc.Find(".PageBuilder-col-9").Html() return doc.Find(class).Html()
}
}
func a16zParser(url string) (string, error) {
return classParser(".blog-content")(url)
}
func cnbcParser(url string) (string, error) {
return classParser(".PageBuilder-col-9")(url)
} }