func getData(easy *curl.CURL, url string, ep string) (link string) { a := "" fmt.Println(url) //calback fooTest := func(buf []byte, userdata interface{}) bool { a = a + string(buf) //fmt.Println(a) nod, err := html.Parse(strings.NewReader(a)) check(err) doc := goquery.NewDocumentFromNode(nod) doc.Find("td").Each(func(i int, s *goquery.Selection) { s.Eq(0).Each(func(k int, bb *goquery.Selection) { bb.Find("img").Each(func(l int, cc *goquery.Selection) { link = cc.AttrOr("src", "12345") }) }) }) return true } // page forward to welcome easy.Setopt(curl.OPT_URL, url) easy.Setopt(curl.OPT_HTTPGET, true) easy.Setopt(curl.OPT_WRITEFUNCTION, fooTest) if err := easy.Perform(); err != nil { println("ERROR: ", err.Error()) } //fmt.Println("success "+link+" ==\n") return link }