Php 我可以使用cURL获取html表吗?

Php 我可以使用cURL获取html表吗?,php,curl,Php,Curl,我试图使用cURL抓取一个外部网页放入我自己的网站,它基本上是一个运动队的“阶梯”,我联系了他们,但他们没有阶梯的RSS提要,所以我试图通过其他方式获取阶梯,是否可以使用cURL抓取和之间的所有内容?我可以使用下面的代码抓取我想要的页面,但是除了HTML表之外,我不需要其他任何东西 $ch = curl_init ("http://www.sportingpulse.com/rpt_ladder.cgi?results=N&round=15&client=1-3909-47801

我试图使用cURL抓取一个外部网页放入我自己的网站,它基本上是一个运动队的“阶梯”,我联系了他们,但他们没有阶梯的RSS提要,所以我试图通过其他方式获取阶梯,是否可以使用cURL抓取和
之间的所有内容?我可以使用下面的代码抓取我想要的页面,但是除了HTML表之外,我不需要其他任何东西

$ch = curl_init ("http://www.sportingpulse.com/rpt_ladder.cgi?results=N&round=15&client=1-3909-47801-81021-6151461&pool=-1");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
echo $page = curl_exec($ch);
如果有人能帮我,那就太好了。谢谢


Leanne

您需要使用curl获取页面内容,并使用字符串处理从返回的字符串中提取表

一个简单的正则表达式是:

/<table>(.*)<\/table/s

/(.*)好的,所以我设法用这个让它工作起来(如果其他人想知道的话)

$ch=curl\u init(“http://www.sportingpulse.com/rpt_ladder.cgi?results=N&round=15&client=1-3909-47801-81021-6151461&pool=-1“;
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$page=curl\u exec($ch);
preg#u match('#]*>(.+?)#is',$page,$matches);
foreach($matches as&$match){
$match=$match;
}
回声';
echo$匹配[1];
回声';

:)

纯正则表达式的另一种选择是使用DOMDocument和xPath。这会将整个文档变成一个对象,并使处理表的内容变得更容易

如果有一个类附加到表中会有区别吗?啊,好的,
上的类是“可结果的”我仍然可以使用上面的代码吗(但不知怎么修改了?)我的表有属性。我怎样才能分辨?
$page = curl_exec($ch);

if (preg_match("/<table>(.*)<\/table/s", $page, $matches)) {
    echo $matches[1];
}
$ch = curl_init ("http://www.sportingpulse.com/rpt_ladder.cgi?results=N&round=15&client=1-3909-47801-81021-6151461&pool=-1");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$page = curl_exec($ch);

preg_match('#<table[^>]*>(.+?)</table>#is', $page, $matches);
foreach ($matches as &$match) {
    $match = $match;
}
echo '<table>';
    echo $matches[1];
echo '</table>';