Yes, GoQuery is compatible with Go modules. GoQuery is a popular library for web scraping in Go that provides jQuery-like functionality for parsing and manipulating HTML documents. Go modules, introduced in Go 1.11, is the official dependency management system for the Go programming language, which makes it easier to manage Go projects' dependencies.
To use GoQuery in a Go project that utilizes Go modules, you need to initialize a new module if you haven't already, and then you can add GoQuery as a dependency.
Here's how you can do that:
- Initialize a new module: If you're starting a new project, first navigate to your project directory and initialize a new module by running:
go mod init <module-name>
Replace <module-name>
with the name you want for your module (often the repository path).
- Add GoQuery as a dependency: To add GoQuery to your project, you can directly import it in your Go code, and then run the
go mod tidy
command to automatically add the dependency to yourgo.mod
file. Alternatively, you can manually add it by running:
go get github.com/PuerkitoBio/goquery
This command will download the GoQuery package along with its dependencies and update your go.mod
and go.sum
files accordingly.
Here is an example of how you might use GoQuery in your Go code:
package main
import (
"fmt"
"log"
"net/http"
"github.com/PuerkitoBio/goquery"
)
func main() {
// Make HTTP request
response, err := http.Get("https://example.com")
if err != nil {
log.Fatal(err)
}
defer response.Body.Close()
// Parse the HTML document
doc, err := goquery.NewDocumentFromReader(response.Body)
if err != nil {
log.Fatal(err)
}
// Use GoQuery to find specific elements
doc.Find("title").Each(func(index int, element *goquery.Selection) {
title := element.Text()
fmt.Println("Page Title:", title)
})
}
After you write your code, you can build or run your Go project as usual, and the Go toolchain will use the information in the go.mod
file to fetch and build the correct dependencies.
Keep in mind that GoQuery's API is subject to change, and you should consult the official GoQuery repository for the most up-to-date usage instructions and documentation.