Skip to content

xpath 无法获取开头有空格的 class #185

Open
@seveniu

Description

@seveniu

html 文本

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<p class=" p">class blank</p>
<p class="p">class no blank</p>
</body>
</html>

浏览器中 xpath 测试结果
Image of Yaktocat

java 测试

        Html html = new Html("<!doctype html>\n" +
                "<html lang=\"en\">\n" +
                "<head>\n" +
                "    <meta charset=\"UTF-8\">\n" +
                "    <title>Document</title>\n" +
                "</head>\n" +
                "<body>\n" +
                "<p class=\" p\">class blank</p>\n" +
                "<p class=\"p\">class no blank</p>\n" +
                "</body>\n" +
                "</html>");

        String noBlankXpath = "//p[@class='p']";
        String blankXpath = "//p[@class=' p']";
        List<String> noBlankResult = html.xpath(noBlankXpath).all();
        System.out.println(noBlankXpath + "  ===>  " + noBlankResult);
        List<String> blankResult = html.xpath(blankXpath).all();
        System.out.println(blankXpath + "  ===>  " + blankResult);

结果

  //p[@class='p']  ===>  [<p class=" p">class blank</p>, <p class="p">class no blank</p>]
  //p[@class=' p']  ===>  [<p class="p">class no blank</p>]

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions