如何使用jsoup获取这个值?
How to get this value using jsoup?
这是网页的片段:
<br><b>Price:</b> Rs. 24,900.00 <br>
我需要获取值 Rs.24,900.00
。但是我不确定如何获取它,因为它没有被任何元素包围。
我用这个:doc.select("b:contains(Price:)");
来到达 Price:
元素。
但我如何获得 Rs.24,900.00
值?有什么帮助吗?
您可以控制 HTML 的来源吗?如果是这样,您永远不应该使用自由文本创建内容。它应该始终驻留在一个元素中,即使它只是一个 p 标签。 (正文元素不算。正文不应包含文本。)
否则您只能进行基于文本的搜索。
Document doc = Jsoup.parse( "<br><b>Price:</b> Rs. 24,900.00 <br>");
Element el = doc.select("b").first(); //get the element which contains "Price:"
String text = ((TextNode) el.nextSibling()).text();
这里,首先我要获取包含Price:
的元素。
然后我们可以获得它的 nextsibling 并使用 text()
方法来获取它的文本。
感谢user1121883 for his answer on similar 。
这是网页的片段:
<br><b>Price:</b> Rs. 24,900.00 <br>
我需要获取值 Rs.24,900.00
。但是我不确定如何获取它,因为它没有被任何元素包围。
我用这个:doc.select("b:contains(Price:)");
来到达 Price:
元素。
但我如何获得 Rs.24,900.00
值?有什么帮助吗?
您可以控制 HTML 的来源吗?如果是这样,您永远不应该使用自由文本创建内容。它应该始终驻留在一个元素中,即使它只是一个 p 标签。 (正文元素不算。正文不应包含文本。)
否则您只能进行基于文本的搜索。
Document doc = Jsoup.parse( "<br><b>Price:</b> Rs. 24,900.00 <br>");
Element el = doc.select("b").first(); //get the element which contains "Price:"
String text = ((TextNode) el.nextSibling()).text();
这里,首先我要获取包含Price:
的元素。
然后我们可以获得它的 nextsibling 并使用 text()
方法来获取它的文本。
感谢user1121883 for his answer on similar