J'ai le tableau suivant (ici, je n'affiche qu'une ligne pour des soucis de lisibilité) dans une url distante.
Je cherche à parser ce tableau et donc récupérer les données de chaque ligne/colonne, notamment l'url et le lien vers l'imagette. J'ai essayé avec la ligne en gras mais ça ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <table id="tablepress-851" class="tablepress tablepress-id-851"> <thead> <tr class="row-1 odd"> <th class="column-1">N°</th> <th class="column-2"> </th> <th class="column-3">Chaine</th> <th class="column-4">Evolution Abonnés</th> <th class="column-5">Abonnés</th><th class="column-7">Vues</th> </tr> </thead> <tbody class="row-hover"> <tr class="row-2 even"> <td class="column-1" style="vertical-align:middle;"><strong>1</strong></td> <td class="column-2" style="vertical-align:middle;"><a href="https://www.youtube.com/user/aMOODIEsqueezie" target="_blank"><img src="https://yt3.ggpht.com/-PZerjsxPjTQ/AAAAAAAAAAI/AAAAAAAAAAA/209pUVEYY80/s88-c-k-no/photo.jpg" width="68" height="68" class="alignnone" border="0" /></a></td> <td class="column-2" style="vertical-align:middle;"><a href="https://www.youtube.com/user/aMOODIEsqueezie" target="_blank"><strong>SQUEEZIE</strong></a></td> <td class="column-4" style="vertical-align:middle;">231 301</td> <td class="column-5" style="vertical-align:middle;">8 576 763</td> <td class="column-6" style="vertical-align:middle;">3 785 925 482</td> </tr> </tbody>
J'ai l'erreur suivante: Fatal error: Call to a member function getAttribute() on a non-object in /var/www/wordpress/dlweb-doc/influence_panel.php on line 16
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?php $content = file_get_contents($url); $dom = new DOMDocument(); $dom->loadHTML($content); $tables = $dom->getElementsByTagName('table'); $table = $tables->item(0); $rows = $table->getElementsByTagName("tr"); foreach ($rows as $row) { $cells = $row -> getElementsByTagName('td'); $classement = $cells->item(0)->nodeValue; $nom = $cells->item(2)->nodeValue; $url_chaine=$cells->item(2)->getAttribute('href')->item(0)->nodeValue; $nb_abonnes = $cells->item(4)->nodeValue; $nb_vues = $cells->item(5)->nodeValue; echo $url_chaine; } ?>
Merci.
Partager