0

我试图弄清楚为什么这对我不起作用。当谈到 cURL 时,我是一个完全的菜鸟,今天是我使用它的第一天。我为此遵循了一个教程,但显然失败了。

它应该检查页面,如果在那里看到“Skill Stats”,则返回“Success”,如果发现“Member Rankings”则返回“Failure”。

<?php

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://services.runescape.com/m=hiscore/compare.ws?user1=Mercon185");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_HTTPGET, TRUE); 
curl_setopt($ch, CURLOPT_POST, FALSE); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);


if (stristr($output,"Skill Stats")) {
    echo 'Success';
}
if (stristr($output,"Member Rankings")) {
    echo 'Failure';
}

curl_close($ch);
?>

`

4

1 回答 1

0

您需要启用跟随重定向。正如我目前看到的,您的 URL 重定向到http://services.runescape.com/m=hiscore/overall.ws?errorcode=1。如果不启用跟随重定向,它只会获取第一页,这确实是空的。

不过,最终的登录页面包含您想要的数据,因此如果您将此行添加到 cURL 选项中,它应该可以工作:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
于 2013-07-17T02:15:18.167 回答