Reputation: 1404
I have following html code:
<div id="app">
<div data-reactroot id="timetable-content-holder">
<div class="top-bar"> ... </div>
<h2>I need it </h2>
<div class="timetable-holder gr-holder">
<div class="timetable-day gr">
<div class = "timetable-day-title"> Daily </dv>
</div>
</div>
</div>
</div>
I need to parse h2
and text inside timetable-day-title
. I cannot write select method. This is my trials:
Elements elements = document.select("div#app > div#timetable-content-holder > h2");
But elements
size is zero. How to write document's select method in my case?
Upvotes: 2
Views: 688
Reputation: 4509
You can select tag by comma separator whichever you want
String html =" <div id=\"app\"> \n" +
"<div data-reactroot id=\"timetable-content-holder\">\n" +
"<div class=\"top-bar\"> ... </div> \n" +
"<h2>I need it </h2> \n" +
"<div class=\"timetable-holder gr-holder\"> \n" +
"<div class=\"timetable-day gr\"> \n" +
"<div class = \"timetable-day-title\"> Daily </dv> \n" +
"</div> \n" +
"</div> \n" +
"</div> \n" +
" </div> ";
Document document = Jsoup.parse(html);
Elements elements = document.select("#app #timetable-content-holder h2,.timetable-day-title ");
for (Element element:elements){
System.out.println(element.text());
}
Update Try this code for calling from url
Document doc = Jsoup.connect("http://YourURL.com").get();
Output:
I need it
Daily
Upvotes: 4