在golang官方html库中,可以使用html.Parse函数来解析HTML文档,并返回一个*html.Node类型的树形结构。可以遍历这个树形结构,找到需要的标签。

例如,如果需要找到所有的<a>标签,可以使用以下代码:

func findLinks(n *html.Node) {
    if n.Type == html.ElementNode && n.Data == "a" {
        for _, a := range n.Attr {
            if a.Key == "href" {
                fmt.Println(a.Val)
                break
            }
        }
    }
    for c := n.FirstChild; c != nil; c = c.NextSibling {
        findLinks(c)
    }
}

func main() {
    resp, err := http.Get("http://example.com")
    if err != nil {
        log.Fatal(err)
    }
    defer resp.Body.Close()
    doc, err := html.Parse(resp.Body)
    if err != nil {
        log.Fatal(err)
    }
    findLinks(doc)
}

这个代码会遍历整个HTML文档,找到所有的<a>标签,并打印出它们的href属性。可以根据需要修改代码,找到其他类型的标签或属性。

golang官方html库怎么选择解析标签

原文地址: https://www.cveoy.top/t/topic/bTa6 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录