DomDocument - impossible de récupérer une node

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : DomDocument - impossible de récupérer une node

Re: DomDocument - impossible de récupérer une node

par moogli » 01 mai 2013, 23:04

salut,

Vire l'arobase de ton code tu verra le problème (a priori le fichier xml cible n'est pas un document xml valide ;) )

@+

DomDocument - impossible de récupérer une node

par laurent974 » 01 mai 2013, 19:15

Bonjour,

Mon soucis est un peu complexe.
Je cherche a récupérer la valeur d'une node, jusque là c'est simple mais ça ce complique lorsque celle ci est affiché grâce à une requête en ajax.
J'imagine donc qu'au moment où mon bout de code s’exécute, rien est affiché dans la div de la page html parsé.

voici le lien qui est parsé : http://www.rueducommerce.fr/TV-Hifi-Hom ... n-Slim.htm

J'essaye de récupérer le prix barré pour info.

et le code:

$lien = 'http://www.rueducommerce.fr/TV-Hifi-Home-Cinema/TV-LED/TV-LED-de-32-a-37/SAMSUNG/4891257-UE42F5300-Televiseur-LED-42-107cm-HDTV-1080p-TNT-HD-3HDMI-CI-USB-Multimedia-CMR-100-Smart-TV-Design-Slim.htm';
$html = new DOMDocument();
@$html->loadHtmlFile($lien);
$xpath = new DOMXPath( $html );

//recuperation prix barre
 $nodevalues = $xpath->query( "//div[@class='blcPrice']/div[@class='prices']/table[@class='prixBarre']/td[@class='px_ctc']/em/em" );
	foreach ($nodevalues as $n){
		$prix_barre = $n->nodeValue."\n";
					
		//explosion du prix pour avoir le prix + les centimes separés.
		$prix_barre = explode(html_entity_decode("."),$prix_barre);
		$centime_barre = substr($prix_barre[1], 0, 2);
		$prix_barre = $prix_barre[0];
	}
Vous pensez qu'il a une solution qui permet de charger la page puis d’exécuter les xpath query ?

Laurent