je veux accéder en c #, texte intérieur du 2nd TD du 2nd TR, c'est-à-dire john paul et 30 avec le pack d'agilité html?
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tableClass">
<form name="form1" action="goto.php" method="post">
<tr>
<td height="35" colspan="2" class="tdClass"
style="padding-top:5px "><img
src="./include/gif/grey-sub-header-ex-customer.gif"
alt="details" width="162" height="20" /></td>
<td valign="top" class="tdClass"> </td>
</tr>
<tr class="trRow">
<td width="190" class="tdDataRow">name:</td>
<td class="tdDataName">john paul</td>
<td class="whiteClass"> </td>
</tr>
<tr class="trRow">
<td width="190" class="tdDataRow">age:</td>
<td class="tdDataName">30</td>
<td class="whiteClass"> </td>
</tr>
Une fois que vous avez le HtmlDocument
chargé (soit par le new HtmlWeb().Load("http://www.site.com")
ou par le doc.Load(...)
), vous pouvez faire:
//Get 2nds <td> tags inside all tr class of that table
var tds = doc.DocumentNode.SelectNodes("//table[@class='tableClass']/tr[@class='trRow']/td[2]");
foreach (var td in tds) {
Console.WriteLine(td.InnerText);
}
Modifier:
J'ai édité le code parce que les balises <tr>
n'étaient pas à l'intérieur de <form>
.