goquery 入门(安装使用教程)

 更新时间:2023年10月20日 09:22:10   作者:海生  
这篇文章主要为大家介绍了goquery 入门(安装使用)教程示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

介绍

我们打开goquery的官方站点,https://github.com/PuerkitoBio/goquery下面是官方的介绍:goquery就是go语言的jQuery

goquery为Go语言带来了类似于jQuery 的语法和一组功能。

它基于 Go 的net/html 包和 CSS 选择器库cascadia。由于 net/html 解析器返回节点,而不是功能齐全的 DOM 树,因此 jQuery 的状态操作函数(如 height()、css()、detach())已被放弃。

引用

另外,因为 net/html 解析器需要 UTF-8 编码,所以 goquery 也需要:调用者有责任确保源文档提供 UTF-8 编码的 HTML。请参阅wiki了解执行此操作的各种选项。

引用

在语法方面,它尽可能接近 jQuery,尽可能使用相同的函数名称,以及温暖而模糊的可链接界面。jQuery 是一个超流行的库,我觉得编写一个类似的 HTML 操作库最好遵循它的 API,而不是重新开始(与 Go 的包的精神相同),尽管它的一些方法fmt比直观(看着你,index() ...)。

安装

go get github.com/PuerkitoBio/goquery

使用

package goquery
import (
    "log"
    "net/http"
    "testing"
    "github.com/PuerkitoBio/goquery"
)
func TestName(t *testing.T) {
    // Request the HTML page.
    res, err := http.Get("http://metalsucks.net")
    if err != nil {
        log.Fatal(err)
    }
    defer res.Body.Close()
    if res.StatusCode != 200 {
        log.Fatalf("status code error: %d %s", res.StatusCode, res.Status)
    }
    // Load the HTML document
    doc, err := goquery.NewDocumentFromReader(res.Body)
    if err != nil {
        log.Fatal(err)
    }
    title := doc.Find("title")
    t.Log(title.Text())
}

以上就是goquery 入门(安装使用教程)的详细内容,更多关于goquery安装使用的资料请关注脚本之家其它相关文章!

相关文章

  • go zero微服务高在请求量下如何优化

    go zero微服务高在请求量下如何优化

    这篇文章主要为大家介绍了go zero微服务高在请求量下的优化处理,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Golang 实现分片读取http超大文件流和并发控制

    Golang 实现分片读取http超大文件流和并发控制

    这篇文章主要介绍了Golang 实现分片读取http超大文件流和并发控制,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Golang Gin局部和全局中间件使用详解

    Golang Gin局部和全局中间件使用详解

    中间件是放在客户端和服务端的中间,当你的客户端对某个接口发起一个请求,但是在到达接口2之前,这里是有一层中间件的处理。本文详细介绍了Golang Gin局部、全局中间件使用方法,感兴趣的同学可以阅读本文
    2023-04-04
  • Golang 断言与闭包使用解析

    Golang 断言与闭包使用解析

    这篇文章主要介绍了Golang 断言与闭包使用解析,Go中的断言用于判断变量的类型,更多相关内容需要的朋友可以参考一下
    2022-07-07
  • Golang如何将上传的文件压缩成zip(小案例)

    Golang如何将上传的文件压缩成zip(小案例)

    这篇文章主要介绍了Golang如何将上传的文件压缩成zip(小案例),这是一个简单的golang压缩文件小案例,可做很多的拓展,这里使用的库是archive/zip,在gopkg里面搜zip就行,需要的朋友可以参考下
    2024-01-01
  • Go语言Http调用之Post请求详解

    Go语言Http调用之Post请求详解

    前文我们介绍了如何进行 HTTP 调用,并通过 GET 请求的例子,讲述了 query 参数和 header 参数如何设置,以及响应体的获取方法。 本文继上文,接下来会通过 POST 请求,对其他参数的设置进行介绍,感兴趣的可以了解一下
    2022-12-12
  • go 实现简易端口扫描的示例

    go 实现简易端口扫描的示例

    该功能实现原理很简单,就是发送socket连接(IP+端口),如果能连接成功,说明目标主机开放了某端口。当要大量扫描端口时,就需要写并发编程了。
    2021-05-05
  • 详解Go 语言中的比较操作符

    详解Go 语言中的比较操作符

    这篇文章专注于 6 个操作符,==,!=,<,<=,> 和 >=。我们将深入探讨它们的语法和用法的细微差别,感兴趣的朋友跟随脚本之家小编一起看看吧
    2018-08-08
  • Go语言提升开发效率的语法糖技巧分享

    Go语言提升开发效率的语法糖技巧分享

    每门语言都有自己的语法糖,像java的语法糖就有方法变长参数、拆箱与装箱、枚举、for-each等等,Go语言也不例外。本文就来介绍一些Go语言的语法糖,需要的可以参考一下
    2022-07-07
  • Go语言大揭秘:适用于哪些类型的项目开发?

    Go语言大揭秘:适用于哪些类型的项目开发?

    想知道Go编程语言适合开发哪些类型的项目吗?无论是网络服务、分布式系统还是嵌入式设备,Go都能轻松应对,本文将带你了解Go在各种场景下的应用,让你更好地选择和使用Go进行开发,需要的朋友可以参考下
    2024-01-01

最新评论