Go does not include a built-in PDF parser, so you must use a third-party library like unidoc or go-pdf to read PDF files. Install the library and use its Open function to load the file, then iterate over pages to extract text or metadata.
package main
import (
"fmt"
"log"
"github.com/unidoc/unipdf/v3/reader"
)
func main() {
r, err := reader.FromFile("document.pdf")
if err != nil {
log.Fatal(err)
}
pages, _ := r.GetNumPages()
fmt.Printf("PDF has %d pages\n", pages)
}