使用DOMXPath提取TD信息

时间:2015-03-25 17:41:10

标签: php domxpath

我使用以下代码从特定的表列中获取信息,但我不断收到以下错误:

类DOMElement的对象无法转换为字符串

以下是我试图从以下网址获取信息的表格列:

<td id="billing_address">1099 Somewhere Lane<br /> Some City, IL 60118</td>

以下是获取信息的CURL脚本:

$url = "http://www.somesite.com";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10); 
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout );
curl_setopt($ch, CURLOPT_POST, 3);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);     

$result = curl_exec($ch);
$document = new DOMDocument();
@$document->loadHTML($result);

$xp = new DOMXpath($document);
$nodes = $xp->query('//td[@id="billing_address"]');
$node = $nodes->item(0);

$client_info = $node;
echo $client_info;
curl_close($ch); 

感谢Lauris,我能够使用以下内容显示内容:

$client_info = $node->nodeValue;
echo $client_info;

问题是我注意到在回显时缺少分隔线的换行标签。我需要的是能够区分由标签分隔的不同行。

我想我会抓住带有billing_info id的标签之间的任何内容,然后使用PHP explode函数来解析各个行。但是那些标签对我来说并不存在。

0 个答案:

没有答案