This don't stable version
$ go get github.com/mantyr/texttokenize
$ go get github.com/mantyr/goquery
<div id="main_test2">
<div class="descriptionText">
<p>Описание:</p>
<p>Декоративная шкатулка<p>
<p style="margin-top:7px;">Цвет: Зелёный, белый</p>
<p>Материал: <p>Дерево</p> </p><p>Производитель: Россия</p></div>
</div>
package main
import (
"github.com/mantyr/texttokenize"
"fmt"
)
func main() {
fields := texttokenize.NewTokenize()
fields.LoadFile("./testdata/valuefields.html")
// fields.SetIgnoreEmptyLine(true) // default value "true"
fields.Parse("#main_test2 .descriptionText p")
fmt.Println(fields.Get("описание")) // print "Декоративная шкатулка"
fmt.Println(fields.Get("цвет")) // print "Зелёный, белый"
fmt.Println(fields.Get("материал")) // print "Дерево"
fmt.Println(fields.Get("производитель")) // print "Россия"
fmt.Println(fields.Get("большой текст")) // print "line 1\r\nline 2\r\nline 3" or "line 1\r\n\r\nline 2\r\n\r\nline 3" if fields.SetIgnoreEmptyLine(false)
}