I wanna crawl a site (bbs.archusers.ir) for making a new post or topic notification for users.
I try to write below code for a reading name, last change date, and URL every section and save into struct and save struct into JSON object. but link part in my struct won't get any value and either appear in the console for me, this is my code
package main
import (
"fmt"
"github.com/anaskhan96/soup"
"log"
"os"
"encoding/json"
)
type Message struct {
Name string
Date string
link string
}
type myJSON struct {
Array []Message
}
var input []Message
func main() {
resp, err := soup.Get("https://bbs.archusers.ir")
if err != nil {
os.Exit(1)
}
doc := soup.HTMLParse(resp)
links := doc.Find("div", "id", "brdmain").FindAll("a")
for i := 0; i < len(links); i += 2 {
link := Message{links[i].Text(), links[i+1].Text(), links[i].Attrs()["href"] }
input = append(input, link)
}
if err != nil {
log.Fatal(err)
}
jsondat := &myJSON{input}
encjson, _ := json.Marshal(jsondat)
fmt.Println(string(encjson))
}
which part I did wrong?