cURL stristr错误

时间:2013-07-17 01:40:51

标签: php curl

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

它应检查页面,如果它在那里看到“技能统计”,则返回“成功”,如果发现“会员排名”,则返回“失败”。

<?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);
?>

`

1 个答案:

答案 0 :(得分:0)

您需要启用以下重定向。我目前看到,您的网址重定向到http://services.runescape.com/m=hiscore/overall.ws?errorcode=1。如果没有启用后续重定向,它只会获取第一页,确实是空的。

最终的目标网页包含您想要的数据,因此如果您将此行添加到您的cURL选项中,它应该有效:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);