Skip to content Skip to sidebar Skip to footer

How Should Parse With Php (simple Html Dom Parser) Background Images And Other Images Of Webpage?

How should parse with PHP (simple html dom/etc..) background and other images of webpage? case 1: inline css

Solution 1:

For Case 1:

// Create DOM from URL or file $html = file_get_html('http://www.google.com/');

// Get the style attribute for the item$style = $html->getElementById("id100")->getAttribute('style');

// $style = background:url(/mycar1.jpg)// You would now need to put it into a css parser or do some regular expression magic to get the values you need.

For Case 2/3:

// Create DOM from URL or file$html = file_get_html('http://www.google.com/');

// Get the Style element$style = $html->find('head',0)->find('style');

// $style now contains an array of style elements within the head. You will need to work out using attribute selectors what whether an element has a src attribute, if it does download the external css file and parse (using a css parser), if it doesnt then pass the innertext to the css parser.

Solution 2:

To extract <img> from the page you can try something like:

$doc = new DOMDocument(); 
$doc->loadHTML("<html><body>Foo<br><img src=\"bar.jpg\" title=\"Foo bar\" alt=\"alt\"></body></html>"); 
$xml = simplexml_import_dom($doc);
$images = $xml->xpath('//img'); 
foreach ($imagesas$img) 
    echo$img['src'] . ' ' . $img['alt'] . ' ' . $img['title']; 

See doc for DOMDocument for more details.

Post a Comment for "How Should Parse With Php (simple Html Dom Parser) Background Images And Other Images Of Webpage?"