【发布时间】:2017-09-05 02:06:26
【问题描述】:
我要解析的文本用红色箭头显示。这就是我尝试解析h2的方式:
Elements elements = document.select("div#app div#timetable-content-holder h2");
但不幸的是,elements 的大小为零。
但我检查了 document.select(div#app).size() 是 1,但 document.select(div#app div#timetable-content-holder).size() 是 0。如果它是零,这意味着我不能对元素执行 for 循环,也永远无法实现图像上显示的其他文本,因为它们在这个div 里面。我想问题是timetable-content-holder 有一些data-reactroot。我不知道它为什么在那里。
我通过 URL 引用该页面。
如何解决这个问题呢?为什么elements 的大小总是为零?
HTML代码供需要者使用(需要解析的文字标注)
<div id="app">
<div data-reactroot="" id="timetable-content-holder">
<div> </div>
<div> </div>
<div> </div>
<div> </div>
//a lot of div above(closed)
<h2>I need it1</h2> ( how to get this)
<div class="timetable-holder gr-holder">
<div class="timetable-day gr">
<div class="timetable-day-title">I need it2</div>
<div class="timetable-card" data-day="1" data-time="1">
<div class="timetable-time">
08:00<!-- /react-text --> // I need it3
<!-- react-text: 57 --> <!-- /react-text --><!-- react-text: 58 -->
08:50<!-- /react-text --></div><span class="font-icon down-arrow"></span><div class="timetable-subject" title="title">I need it4</div>
//below is also closing divs
【问题讨论】:
-
能否请添加 html 而不是屏幕截图?
-
@soorapadman 完成!