[英]how to get this hidden field?
I have this piece of HTML: 我有这段HTML:
<li class="hidden-xs-inline">
<a class='page-link' href="/acne-scars-treatment/answers?page=226" data-page="226">
</a>
</li>
how could I get the number 226
using Java with Jsoup? 如何将Java与Jsoup一起使用,得到
226
?
I used this code: 我使用以下代码:
Document doc=Jsoup.connect(topic_link).get();
Elements elements = doc.select("li.hidden-xs-inline > a.page-link");
return elements.text();
but it didn't return that number I want to get! 但是它没有返回我想要的数字!
any idea!? 任何想法!?
The data you require is not in the elements body so 'text()' won't work. 您需要的数据不在元素主体中,因此'text()'将不起作用。 Try:
尝试:
elements.attr("data-page");
For more information please look at: https://jsoup.org/apidocs/org/jsoup/select/Elements.html 有关更多信息,请查看: https : //jsoup.org/apidocs/org/jsoup/select/Elements.html
see below: 见下文:
import org.apache.http.NameValuePair;
import org.apache.http.client.utils.URLEncodedUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
import java.net.URI;
import java.net.URISyntaxException;
import java.nio.charset.Charset;
import java.util.List;
/**
add following dependencies to pom.xml
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.10.2</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.3</version>
</dependency>
*/
public class JsoupExample {
public static void main(String[] args) throws URISyntaxException {
String HTMLSTring = "<li class=\"hidden-xs-inline\">\n" +
" <a class='page-link' href=\"/acne-scars-treatment/answers?page=226\" data-page=\"226\">\n" +
"</a>\n" +
"</li>";
Document html = Jsoup.parse(HTMLSTring);
Elements hiddenElements = html.body().getElementsByClass("hidden-xs-inline");
Elements pageLinkElements = hiddenElements.get(0).getElementsByClass("page-link");
String href = pageLinkElements.get(0).attr("href");
List<NameValuePair> params = URLEncodedUtils.parse(new URI(href), Charset.forName("UTF-8"));
for (NameValuePair param : params) {
System.out.println(param.getName() + " : " + param.getValue()); //page : 226
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.