XQuery文档数据提取 Golang 包

联合创作 · 2023-09-30 15:27

XQuery 是一个 Golang 包,允许从 HTML 或 XML 文档中使用 XPath 提取文档数据。


安装



go get -u github.com/antchfx/xquery



HTML 查询


这个包使用 Golang 官方包来解析 html 文件:html。


方法:


Find(html.Node, string) []html.Node
FindOne(*html.Node, string) *html.Node
FindEach(*html.Node, string, func(int, *html.Node))
LoadURL(string) *html.Node


package main

import (
    "golang.org/x/net/html"
    "github.com/antchfx/xquery/html"    
)

func main() {
    html_string:=`<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>
<h1>This is a Heading</h1>
<p>This is a paragraph.</p>
</body>
</html>`
    root, err := html.Parse(strings.NewReader(html_string))
    if err != nil {
        panic(err)
    }
    node := htmlquery.FindOne(root, "//title")
    fmt.Println(htmlquery.OutputHTML(node)) // output html text with tags
    fmt.Println(htmlquery.InnerText(node))  
}

XML 查询


方法:



  • Find(Node, string) []Node


  • FindOne(*Node, string) *Node


  • FindEach(*Node, string, func(int, *Node))


  • LoadURL(string) *Node


浏览 24
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报