0

我正在尝试使用 curl 和simple_html_DOM显示网页中的一些内容,每当我回显内容时它只是一个数组我如何让它实际显示 html 内容?

<?php
echo ("hello");

include 'simple_html_dom.php';

$curl = curl_init();
curl_setopt ($curl, CURLOPT_URL, "http://catalog.hastingsfilter.com/startautoapps.html");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_REFERER, "http://catalog.hastingsfilter.com/startautoapps.html");

$result = curl_exec ($curl);
curl_close ($curl);
//write contents of $result to file
$File = "page.txt";
$fh = fopen($File, 'w') or die("can't open file");
fwrite($fh, $result);
fclose($fh);
//turn file into dom object
$page = file_get_html("page.txt");
$div = $page->find('div[id=columnright]');
echo $div;

?>

谢谢

4

2 回答 2

1

似乎内部 < iframe>正在弄乱查询。我不知道为什么简单的 html dom 表现得那样.. 为什么不将查询更改为:

$div = $page->find("iframe[name='main2']");
echo $div[0]->innertext;

编辑:

您可以像这样更改.src属性:

$page = file_get_html("page.txt");
...
$page->find("iframe[name='main2']",0)->src = "foo";
$thehtml = $page->save();

顺便说一句,我直接调用了<iframe>源并且还找到了一个无服务器..

于 2012-06-07T00:48:07.077 回答
0

我不确定,但我认为您可能必须使用

$div->innertext;

获取 div 的内容。

于 2012-06-06T23:35:25.800 回答