我试图从Android中的股票市场历史价格表中提取一些数据。该表有时包含我需要删除的行,因此要有一个干净的表。在下面的片段中,行位于第三个tr中。我发现了一种使用
去除红利的细胞的方法html = document.select("td[class=\"yfnc_tabledata1\"][align=\"center\"]");
html.remove();
但我不确定如何删除日期(2015年5月4日)的td。有任何想法吗?然后我按班级来获取元素" yfnc_tabledata1"并通过它们找到我需要的数据。
<tr>
<td class="yfnc_tabledata1" nowrap align="right">May 5, 2015</td>
<td class="yfnc_tabledata1" align="right">28.69</td>
<td class="yfnc_tabledata1" align="right">28.96</td>
<td class="yfnc_tabledata1" align="right">27.64</td>
<td class="yfnc_tabledata1" align="right">27.71</td>
<td class="yfnc_tabledata1" align="right">4,595,800</td>
<td class="yfnc_tabledata1" align="right">27.58</td>
</tr>
<tr>
<td class="yfnc_tabledata1" nowrap align="right">May 4, 2015</td>
<td class="yfnc_tabledata1" align="right">28.67</td>
<td class="yfnc_tabledata1" align="right">28.80</td>
<td class="yfnc_tabledata1" align="right">28.35</td>
<td class="yfnc_tabledata1" align="right">28.61</td>
<td class="yfnc_tabledata1" align="right">33,537,800</td>
<td class="yfnc_tabledata1" align="right">28.47</td>
</tr>
<tr>
<td class="yfnc_tabledata1" nowrap align="right">May 4, 2015</td>
<td class="yfnc_tabledata1" align="center" colspan="6">0.26 Dividend</td>
</tr>
<tr>
<td class="yfnc_tabledata1" nowrap align="right">May 1, 2015</td>
<td class="yfnc_tabledata1" align="right">28.68</td>
<td class="yfnc_tabledata1" align="right">28.68</td>
<td class="yfnc_tabledata1" align="right">28.68</td>
<td class="yfnc_tabledata1" align="right">28.68</td>
<td class="yfnc_tabledata1" align="right">0</td>
<td class="yfnc_tabledata1" align="right">28.28</td>
</tr>
&#13;
答案 0 :(得分:1)
我自己没有尝试过,但你可以尝试这样做:
document.select("td[class=\"yfnc_tabledata1\"][align=\"center\"]").parents();
通过这种方式你可以得到封闭的&#34; tr&#34;你可以删除整行。
答案 1 :(得分:1)
好的,已经找到了解决方案。
for( Element element : document.select("td[class=\"yfnc_tabledata1\"][align=\"center\"]")) {
el = element.parent();
el.remove();
}
通过这种方式,我找到了带有红利的td,我得到了它的父母并将其全部删除。似乎工作。