我想從 html 內容解析錨鏈接。/* 我的 HTML 內容示例<a class="productnamecolor colors_productname" href="http://www.cccxcxc.com/Nautical-Bubble-Romper-p/s15brpnt03.htm">*/ <a class="productnamecolor colors_productname" href="http://www.dewewe.com/Nautical-Bubble-Romper-p/erewrwer.htm"> <a class="productnamecolor colors_productname" href="http://www.sdsddsd.com/Nautical-Bubble-Romper-p/dsadadasd.htm"> */ 錨有href,我想獲得Href的值。但這給了我錯誤..錯誤:單值上下文中的多值 s.Attr()package main import ( "fmt" "log" "github.com/PuerkitoBio/goquery" ) func ExampleScrape() { doc, err := goquery.NewDocument("http://www.myurl.com/category-s/1828.htm") if err != nil { log.Fatal(err) } /* **my sample html after http open** <a class="productnamecolor colors_productname" href="http://www.cccxcxc.com/Nautical-Bubble-Romper-p/s15brpnt03.htm">*/ <a class="productnamecolor colors_productname" href="http://www.dewewe.com/Nautical-Bubble-Romper-p/erewrwer.htm"> <a class="productnamecolor colors_productname" href="http://www.sdsddsd.com/Nautical-Bubble-Romper-p/dsadadasd.htm"> ***/ doc.Find("table.v65-productDisplay a.productnamecolor").Each(func(i int, s *goquery.Selection) { band := s.Attr("href") // here i want to get attribute " href " value. this is not working here. fmt.Printf(band) }) } func main() { ExampleScrape() }
2 回答

largeQ
TA貢獻2039條經驗 獲得超8個贊
Selection.Attr 返回兩個值:屬性值和一個布爾值,說明該屬性是否存在(如果為假,則屬性值為空)。
當您忽略多個返回值時,Go 不喜歡它,因此您必須將代碼更改為以下內容:
doc.Find("table.v65-productDisplay a.productnamecolor").Each(func(i int, s *goquery.Selection) {
band, ok := s.Attr("href")
if ok {
fmt.Printf(band)
}
})
- 2 回答
- 0 關注
- 224 瀏覽
添加回答
舉報
0/150
提交
取消