Go HTML parsing package忽略输入标记,并将它们解释为表单标记的文本内容。绕过此限制的最佳选择是什么?
package main
import (
"fmt"
"strings"
"golang.org/x/net/html"
)
const HTML = `
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>selected attribute</title>
</head>
<body>
<form method="GET">
<input type="submit" value="submit"/>
</form>
</body>
</html>
`
func main() {
z := html.NewTokenizer(strings.NewReader(HTML))
tt := html.TokenType(7)
for tt != html.ErrorToken {
tt = z.Next()
if tt == html.StartTagToken {
name, _ := z.TagName()
fmt.Println(string(name))
}
}
}
发布于 2018-05-31 20:26:55
在解析input
标签时,应该使用html.SelfClosingTagToken
而不是html.StartTagToken
。
https://stackoverflow.com/questions/50613921
复制相似问题