亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 jsoup 抓取站點并在 golang 中生成 json

使用 jsoup 抓取站點并在 golang 中生成 json

Go
慕田峪9158850 2023-04-24 16:50:18
我想抓取一個網站 (bbs.archusers.ir) 以便為用戶制作新帖子或主題通知。我嘗試在下面的代碼中編寫閱讀名稱、上次更改日期和每個部分的 URL,并將其保存到結構中,并將結構保存到 JSON 對象中。但是我的結構中的鏈接部分不會獲得任何值,并且會出現在我的控制臺中,這是我的代碼    package mainimport (    "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 []Messagefunc 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))}我哪一部分做錯了?
查看完整描述

1 回答

?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

您的 Message 結構中存在問題,它必須使用大寫字母 k 命名“link”---< Link


type Message struct {

Name string

Date string

Link string

}

并且輸出將是正確的


{"姓名":"??????? Manjaro","日期":"2018-10-18 10:55:09","鏈接":"viewforum.php?id=22"}


查看完整回答
反對 回復 2023-04-24
  • 1 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號