如何使用Python根据单元格内容删除表格行?
我有一个包含表格的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 个回答
3
你可以看看Beautiful Soup,这是一个用Python写的工具,可以帮助你解析HTML和XML文件。
4
使用Beautiful Soup(这只是个开始,还有很多可以改进的地方,比如怎么检查是否为零,以及你需要决定是检查第三个单元格还是第四个单元格):
soup = BeautifulSoup(open('yourhtml.html').read())
for tr in soup('tr'):
if tr('td')[3].text == '0.00':
tr.extract()