【发布时间】:2011-09-11 02:52:29
【问题描述】:
我正在尝试在 html 网页的表格中获取一些数据字段。该网页是在发布某些内容时动态生成的。我使用php-curl 获取网页,然后使用xpath 从某些字段获取数据。我能够获取页面而不是特定字段。代码是这样的
$url="http://www.rtu.ac.in/results/reformat.php";
$post="rollnumber=08epccs060&filename=fetchmodulesem_4_btech410m.php&button=Submit";
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$post);
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$content=curl_exec($ch);
curl_close($ch);
$totalPath="html/body/table[4]/tbody/tr[3]/td[4]";
$page=new DOMDocument();
$xpath=new DOMXPath($page);
$page->loadHTML($content);
$page->saveHTML(); // this shows the page contents
$total=$xpath->query($totalPath);
echo $total->length; //shows 0
echo $total->item(0)->nodeValue; //shows nothing
xpath 是正确的,因为我已经用FirePath 进行了检查。我从中了解到$xpath->query 不是在做工作。
【问题讨论】:
标签: php html curl xpath web-scraping