go-wikimedia is an interface to the Wikimedia (Wikipedia, Wiktionary, etc.) API implemented in the Go programming language.
This project was originally created by Patrick Mylund Nielsen. I forked his repo for my project pastime. If you notice a bug, feel free to submit an issue on this repo.
go get github.com/ciehanski/go-wikimedia
https://godoc.org/github.com/ciehanski/go-wikimedia
or from the CLI:
go doc github.com/ciehanski/go-wikimedia
package main
import (
"fmt"
"log"
"net/http"
"net/url"
"github.com/ciehanski/go-wikimedia"
)
func main() {
wiki, err := wikimedia.New(wikimedia.Options{
Client: http.DefaultClient,
URL: "https://en.wikipedia.org/w/api.php",
UserAgent: "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 " +
"(KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
})
if err != nil {
log.Fatal(err.Error())
}
resp, err := wiki.Query(url.Values{
"action": {"query"},
"prop": {"extracts"},
"titles": {"Osmosis|Procrastination"},
"exsentences": {"5"},
"explaintext": {"1"},
"original": {"source"},
})
if err != nil {
log.Fatalf("Error executing query: %s", err.Error())
}
for _, v := range resp.Query.Pages {
fmt.Println(v.Title, "-", v.Extract)
}
}
Please feel free to contribute and submit any PRs to this project.
MIT