Extracting specific data from a web page using PHP
Solution 1
You can use DOMDocument
, like this:
$html = file_get_contents( $url);
libxml_use_internal_errors( true);
$doc = new DOMDocument;
$doc->loadHTML( $html);
$xpath = new DOMXpath( $doc);
// A name attribute on a <div>???
$node = $xpath->query( '//div[@name="changeable_text"]')->item( 0);
echo $node->textContent; // This will print **GET THIS TEXT**
Solution 2
You might want to have a look at the
Simple HTML DOM Library
There is a little tutorial here: http://www.developertutorials.com/tutorials/php/easy-screen-scraping-in-php-simple-html-dom-library-simplehtmldom-398/
That one is a screen scraping API that lets you feed html to it and then get parts of it in a jQuery similiar language.
Daniel Silva
I'm a Portuguese Student currently in College (@FEUP). I'm studying Informatics and Computing Engineering. Programming is one of my hobbies, especialy C, PHP, JS, jQuery and other languages and applications such as CSS, HTML, MySQL, etc.
Updated on July 09, 2022Comments
-
Daniel Silva almost 2 years
Possible Duplicate:
HTML Scraping in PhpI would like to know if is there any way to get from a webpage a specific string of text wich is updated every now and then using PHP. I´ve searched "all over the internet" and have found nothing. Just saw that preg_match could do it, but I didn't understand how to use it.
imagine that a webpage contains this:
<div name="changeable_text">**GET THIS TEXT**</div>
How can I do it using PHP, after having used
file_get_contents
to put the page in a variable?Thanks in advance :)