Jump to content

xpath get contents of div with certain class


dadamssg87

Recommended Posts

I've been pulling my hair out over this. I have a web page that i'm trying to get the contents of all of the divs with a certain class. I figured xpath would be the best way to go but i can't figure it out and theres a surprising lack of examples/tutorials about using it with HTML. i have the following and i know i'm getting the right number of divs. I just don't know how to get their innerHTML/contents.

 

		$url = "http://www.vanityfair.com/politics/2012/10/michael-lewis-profile-barack-obama";

	$ctx     = stream_context_create(array('http'=> array('timeout' => 10)));

	libxml_use_internal_errors(TRUE);
	$num = 0;

	if($html = @file_get_contents($url,false,$ctx)){

		$doc   = DOMDocument::loadHTML($html);
		$xpath = new DOMXPath($doc);

		foreach($xpath->query('//div[@class="page-display"]') as $div){
			$num++;
			echo "$num. ";


		//	echo $div->item(0)->textContent;
			//????

			echo "<br/>";
		}

		echo "<br/>FINISHED";

	}

 

The $div->item(0)->textContent line breaks the loop and doesn't output anything.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.