[DOM] XPATH : récupérer des données depuis un fichier HTML
Bonjour,
Je me prends la tête depuis un paquet d'heure avec XPath pour récupérer les informations contenu sur une page HTML.
J'ai une page HTML contenant une table (page de la FFTA donc pas moyen de la modifier :weird:)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| <table border="1" class="orbe3 full clmt keep-heights no-hover" style="margin-bottom: 1em;">
...
<tbody>
...
<tr>
<td class="ac" >
<img src="..." title="Pré-inscrition non terminée" />
</td>
<td ></td>
<td class="ac" >22</td>
<td class="al" style="..." >
<a class="open-modal" href="<lien_à_récuperer>" title="Consultation du palmarès d'un archer" rel="dialog" rev="800x400" data-term><n° du licencié></a>
</td>
<td class="al" style="font-weight: bold;" >
<a class="open-modal" href="..." title="Consultation du palmarès d'un archer" rel="dialog" rev="800x400" data-term>...</a>
</td>
<td class="al" >
<span data-term>...</span>
</td>
<td class="al" >
<span data-term>...</span>
</td>
<td class="ac" >...</td>
<td class="ac" >...</td>
<td class="ac" >...</td>
<td class="ac" style="font-weight: bold;" >...</td>
<td class="ar" style="font-weight: bold;" >
<a href="..." target="_blank" style="text-decoration: none">
<img src="..." alt="Préinscrire" />
</a>
</td>
</tr>
...
</tbody>
</table> |
et je voudrais récupérer le <lien_à_récupérer> dans la 4ème balise <td> uniquement pour un n° de licencié donné.
J'ai réussi à afficher le n° de licencié mais par le <lien_à_récupérer> avec ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| $dom = new DOMDocument();
@$dom->loadHTML($strFIL_contenu);
$xpath = new DOMXPath($dom);
$liste_noms = $xpath->query('//table[@class="orbe3 full clmt keep-heights no-hover"]/tbody/tr');
$nombre_de_noms = $liste_noms->length;
echo $nombre_de_noms;
for($i = 0; $i < $nombre_de_noms; $i++) {
$td = $liste_noms->item($i);
foreach ($td->childNodes as $value) {
if ($value->nodeValue == "<n° du licencié>") {
$index = $i;
var_dump($value);
}
}
}
$strXpath = '//table[@class="orbe3 full clmt keep-heights no-hover"]/tbody/tr['. (intval($index) + 1) .']/td';
$xPath_srch = $xpath->query($strXpath);
$num_Licence = $xPath_srch->item(3)->nodeValue;
$url_Palmares = $xPath_srch->item(3)->attributes(0);
echo $num_Licence . " : " . $url_Palmares . "<br>"; |
la variable $url_Palmares reste vide...
Une petite aide ne serait pas de trop :calim2:, merci d'avance.