如何使用python根据行中某个单元格的内容删除表格行?

时间:2011-12-08 14:46:13

标签: python html

我有html文档,表格如下:

<tr>
<td width="3%"><input type="checkbox", name="chk"></td>
<td width="10%">101</td>
<td width="4%">Fix</td>
<td width="5%">2.00</td>
<td width="6%">09:28:03</td>
<td width="5%">5</td>
<td width="9%">6026866.421</td>
<td width="9%">6525118.804</td>
<td width="5%">149.124</td>
<td width="8%">3533692.676</td>
<td width="8%">1174580.462</td>
<td width="8%">5161083.095</td>
<td width="5%">0.009</td>
<td width="5%">0.016</td>
<td width="5%">2.14</td>
<td width="7%">07/09</td></tr>
<br>
<tr>
<td width="3%"><input type="checkbox", name="chk"></td>
<td width="10%">101</td>
<td width="4%">Fix</td>
<td width="5%">0.00</td>
<td width="6%">09:28:03</td>
<td width="5%">5</td>
<td width="9%">6026866.421</td>
<td width="9%">6525118.804</td>
<td width="5%">149.124</td>
<td width="8%">3533692.676</td>
<td width="8%">1174580.462</td>
<td width="8%">5161083.095</td>
<td width="5%">0.009</td>
<td width="5%">0.016</td>
<td width="5%">2.14</td>
<td width="7%">07/09</td></tr>

等...... 我需要删除第四个单元格内容为“0.00”的行并离开 只有这些'2.00'或者更容易删除偶数行。 使用python实现它的最简单方法是什么?

2 个答案:

答案 0 :(得分:3)

您可能希望查看Beautiful Soup,这是一个用于HTML和XML的python解析器。

答案 1 :(得分:2)

使用Beautiful Soup(这只是一个开始,有很多需要改进的地方,比如如何检查零,如果你想检查第三个或第四个单元格,你还必须下定决心):

soup = BeautifulSoup(open('yourhtml.html').read())
for tr in soup('tr'):
    if tr('td')[3].text == '0.00':
         tr.extract()