package main
import (
"fmt"
"strings"
"golang.org/x/net/html"
)
func main() {
htmlContent := `
<p>Willy</p>
<p></p>
<img src="/super-app/1713254482/1713254482) (1).jpg" alt="undefined" style="height: auto;width: auto"/>
<p></p>
`
// Parse the HTML content
doc, err := html.Parse(strings.NewReader(htmlContent))
if err != nil {
fmt.Println("Error parsing HTML:", err)
return
}
// Define a function to recursively search for the src attribute
var extractSrc func(*html.Node) string
extractSrc = func(n *html.Node) string {
if n.Type == html.ElementNode && n.Data == "img" {
for _, attr := range n.Attr {
if attr.Key == "src" {
return attr.Val
}
}
}
for c := n.FirstChild; c != nil; c = c.NextSibling {
if src := extractSrc(c); src != "" {
return src
}
}
return ""
}
// Extract src attribute value
src := extractSrc(doc)
if src != "" {
fmt.Println("Image src:", src)
} else {
fmt.Println("Image src not found")
}
}