Find all tr
tags and get td
tags by class
attribute:
# encoding: utf-8
from bs4 import BeautifulSoup
data = u"""
<table>
<tr>
<td class="zeit"><div>03.12. 10:45:00</div></td>
<td class="system"><div><a target="_blank" href="https://stackoverflow.com/questions/27272247/detail.php?host=CG&factor=2&delay=1&Y=15">CG</div></a></td>
<td class="fehlertext"><div>System steht nicht zur Verfügung!</div></td>
</tr>
<tr>
<td class="zeit"><div>03.12. 10:10:01</div></td>
<td class="system"><div><a target="_blank" href="detail.php?host=DEXProd&factor=2&delay=5&Y=15">DEX</div></a></td>
<td class="fehlertext"><div>ssh: Connection refused Couldn't read packet: Connection reset by peer</div></td>
</tr>
<tr>
<td class="zeit"><div>03.12. 06:23:06</div></td>
<td class="system"><div><a target="_blank" href="detail.php?host=FRAUD&factor=2&delay=1&Y=15">Boni</div></a></td>
<td class="fehlertext"><div>ID Fehler</div></td>
</tr>
</table>
"""
soup = BeautifulSoup(data)
for tr in soup.find_all('tr'):
zeit = tr.find('td', class_='zeit').get_text(strip=True)
system = tr.find('td', class_='system').get_text(strip=True)
fehlertext = tr.find('td', class_='fehlertext').get_text(strip=True)
print zeit, system, fehlertext
Prints:
03.12. 10:45:00 CG System steht nicht zur Verfügung!
03.12. 10:10:01 DEX ssh: Connection refused Couldn't read packet: Connection reset by peer
03.12. 06:23:06 Boni ID Fehler
2
solved parse a HTML file with table using Python