2011-12-08 17 views
0

私は次のようにテーブルを含むHTML文書を持っている:私は、第4のセルの内容が「0.00」である行を削除し、「2.00」でのみ これらを残しておく必要があります
....
Pythonを使用して行のセルの内容に基づいてテーブルの行を削除する方法は?

<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> 

など偶数行だけを削除する方が簡単かもしれません。 Pythonを使用してそれを達成する最も簡単な方法は何ですか?

+0

誰かがお答えするのではなく、お答えするのが面白いです。 – daikini

答えて

2

美しいスープを(これはゼロのためにチェックし、あなたが第三または第四のセルを確認したい場合は、また、あなたの心を補うために持っているかのように、改善するために多くをあります、ちょうどスタートです)使用:

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

右の第4セル、間違いです。ありがとう – daikini

+0

私はあなたの例でエラーがあります:if tr( 'td')[4] .text == '0.00': IndexError:リストのインデックスが範囲外です – daikini

関連する問題