我正在尝试从带有原始xpath的html中删除一个元素。
final Document document = Jsoup.parse(htmlAsString);
final Elements elements = document.select("/html/head");
elements.forEach(Node::remove);
但遇到以下错误:,
org.jsoup.select.Selector$SelectorParseException: Could not parse query '/html/head': unexpected token at '/html/head'
at org.jsoup.select.QueryParser.findElements(QueryParser.java:206)
at org.jsoup.select.QueryParser.parse(QueryParser.java:59)
at org.jsoup.select.QueryParser.parse(QueryParser.java:42)
at org.jsoup.select.Selector.select(Selector.java:91)
at org.jsoup.nodes.Element.select(Element.java:372)
有没有一种方法可以从html处理原始xpath来获取/删除元素。
1条答案
按热度按时间bxfogqkk1#
jsoup本机支持一组css选择器,而不是xpath。你可以这样做:
(请参阅选择器语法和元素#remove()文档。)
如果需要专门使用xpath(为什么?),可以使用jsoup的w3c dom转换器将jsoup文档转换为w3c文档(java xml),并对其运行xpath查询: