帮助使用PHP + cURL登录网站
|
我一直在寻找有关使用cURL从网站获取信息的问题的帮助。
我是使用cURL的新手,因此我需要一些指导。我需要自动登录3dstats.com,然后恢复数据列表。有了列表,没问题,我已经在寻找解决方案;这是我无法上班的登录名。经过大量清理后,登录表单如下所示:
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
<meta name=\"generator\" content=
\"HTML Tidy for Windows (vers 14 February 2006), see www.w3.org\" />
<title></title>
</head>
<body>
<form action=\"/cgi-bin/edit2.cgi\" method=\"post\">
<input type=\"hidden\" name=\"type\" value=\"2\" />
<input type=\"text\" class=\"flinput\" size=\"40\" name=\"usr\" value=\"00000000\" />
<input type=\"password\" size=\"40\" name=\"UsrPass\" class=\"flinput\" />
<input type=\"submit\" value=\"Submit \" class=\"binput\" />
</form>
</body>
</html>
因此,我需要发送3个变量,类型,usr和UsrPass。如果我保存此页面并单击Submit,则该表单可以正常工作(当然,在将字段更改为hidden并使用正确的登录值填充它们之后)。
但是,如果我这样做:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, \"http://3dstats.com/cgi-bin/edit2.cgi\");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, true);
$data = array(\"type\" => \"44\",
\"usr\" => \"correct8-digitNumber\",
\"UsrPass\" => \"correctPassword\");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_COOKIEJAR, \'/3dstats/cookies.txt\');
curl_setopt($ch, CURLOPT_COOKIEFILE, \'/3dstats/cookies.txt\');
$output = curl_exec($ch);
$info = curl_getinfo($ch);
echo \"<pre>\";
print_r($info);
echo \"</pre>\";
echo $output;
curl_close($ch);
?>
表格返回:\“错误:错误的帐户\”,并且帐户号已填充为\“ 0000 \”(注意空格)。该帐户是一个8位数字。
关于我在做什么错的任何想法吗?该页面说它正在使用cookie。以后捕获/使用它们的正确形式是什么?我正在尝试的似乎不起作用。
在此先感谢您的帮助/建议。
没有找到相关结果
已邀请:
2 个回复
亥套惟间连
现在可以登录。
校勒魏寡