Java 如何从div标记属性解析Aria标签?
我正在使用JSoup解析一些HTMLL信息,我想解析特定div属性的aria标签值。我试图分析的行如下所示:Java 如何从div标记属性解析Aria标签?,java,html,parsing,jsoup,Java,Html,Parsing,Jsoup,我正在使用JSoup解析一些HTMLL信息,我想解析特定div属性的aria标签值。我试图分析的行如下所示: <div class="tiny-star star-rating-non-editable-container" aria-label=" Rated 5 stars out of five stars "> Document document = Jsoup.connect(url).get(); Elements stars= document.select("d
<div class="tiny-star star-rating-non-editable-container" aria-label=" Rated 5 stars out of five stars ">
Document document = Jsoup.connect(url).get();
Elements stars= document.select("div.tiny-star star-rating-non-editable-container[aria-label]");
String value = stars.text();
System.out.println("The rating is " + value);
但是,字符串值返回空白。为什么会这样 该选择器表达式不会给出您所期望的结果。它被视为两部分选择器
-查找类为div.tiny-star
的tiny-star
元素div
-然后查找具有star rating non-editable容器[aria label]
属性的后代aria label
元素star rating non-editable容器
Element divWithStars = document.select(
"div.tiny-star.star-rating-non-editable-container[aria-label]");
String ariaLabel = divWithStars.attr("aria-label");
请注意tiny star
和star rating-…
之间的点而不是空格,以及select
返回承载aria标签属性的元素,而不是属性本身的事实-您必须使用attr
来提取属性值