如何使用PHP仅提取html表的第二列的第二个单元格

时间:2013-07-02 23:23:02

标签: php web-scraping html-table

我正在尝试使用php仅提取html表的第二列的第二个单元格。 这是表格的一个例子:

<table border="1" bordercolor="#FFCC00" style="background-color:#FFFFCC" width="100%" cellpadding="3" cellspacing="3">
<tr>
    <td>Name</td>
    <td>Marcos</td>
</tr>
<tr>
    <td>Address</td>
    <td>1234 west 34 st</td>
</tr>
<tr>
    <td>Phone</td>
    <td>2013336666</td>
</tr>
<tr>
    <td>fax</td>
    <td>201456789</td>
</tr>

我只想用地址拉出单元格。

2 个答案:

答案 0 :(得分:1)

首先,我建议您使用PHP DOMDocument类,它更全面,功能更强。我也使用DOMXPath进行简单的遍历。

$dom = DOMDocument::loadHTML($your_html_string);
$dom_xpath = new DOMXPath($dom);

$value_you_want = $dom_xpath->evaluate('string(/table/tr[2]/td[2])');

答案 1 :(得分:0)

好吧,既然你没有说明你打算如何做到这一点,我只会在那里扔东西。试试这里找到的PHP DOM:

http://us2.php.net/manual/en/book.dom.php

在PHP中读取和操作XML或HTML DOM是一种很棒的OOP方法。