Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to parse HTML table using PHP? [duplicate]

Tags:

html

php

Possible Duplicate:
How to parse and process HTML with PHP?

I need to fetch the second column of the given HTML table using PHP. How can I do it?

References:

Table to be parsed: http://bit.ly/Ak2xay

HTML code of this table: http://bit.ly/ACdLMn

like image 847
isiaatz Avatar asked Jan 11 '12 08:01

isiaatz


1 Answers

For tidy HTML codes, one of the parsing approach can be DOM. DOM divides your HTML code into objects and then allows you to call the desired object and its values/tag name etc.

The official documentation of PHP HTML DOM parsing is available at http://php.net/manual/en/book.dom.php

For finding the values of second column for the given table following DOM implementation can be done:

<?php
$data = file_get_contents('http://mytemporalbucket.s3.amazonaws.com/code.txt');

$dom = new domDocument;

@$dom->loadHTML($data);
$dom->preserveWhiteSpace = false;
$tables = $dom->getElementsByTagName('table');

$rows = $tables->item(1)->getElementsByTagName('tr');

foreach ($rows as $row) {
        $cols = $row->getElementsByTagName('td');
        echo $cols[2];
}

?>

Reference: Customized the code provided at How to parse this table and extract data from it? to match this question's demand.

like image 134
codersofthedark Avatar answered Oct 10 '22 03:10

codersofthedark