PHP curl无法模拟登录信息

时间:2012-08-18 11:47:50

标签: php curl

PHP curl无法模拟此网站上的登录信息http://livearchive.onlinejudge.org/,并返回一个句子,您无权查看此页面!

2 个答案:

答案 0 :(得分:2)

cURL应该可以很好地模拟登录。

请确保:

  • 将数据发布到登录URL。
  • 获取登录页面以获取正确的nonce数据等。
  • 之后存储cookie并将其用于进一步的请求

如何发布数据

查看问题Passing $_POST values with cURL

的回答

如何获取正确的表单数据

使用HTML解析器库来解析网页并提取字段。例如,您可以使用DOMDocument,并使用getElementById来获取所需的表单。

如何存储cookie并将其用于进一步的请求

PHP cURL and cookies页面对此进行了解释。

答案 1 :(得分:0)

因为它只是一个问题,我希望你也需要一个解释,而不是任何脚本。

Curl可以完美登录您提到的网站,但您需要正确使用参数。

您的网址应指向:http://livearchive.onlinejudge.org/index.php?option=com_comprofiler&task=login并使用以下变量

username=
passwd= 
op2=login
lang=english
force_session=1
return=B%3AaHR0cDovL2xpdmVhcmNoaXZlLm9ubGluZWp1ZGdlLm9yZy8%3D
message=0
loginfrom=loginmodule
cbsecuritym3=cbm_02099e1c_6e2810f8_97a3f622ba6c000cb557bd8458534f61&j2ffb0ca892d8cf58942dfbea23559ed2=1
remember=yes
Submit=Login

请注意cbsecuritym3变量,您还需要发送2个Cookie信息,例如。 mosvisitor=1; 8ca25fe06780267eef1b49296a9a99ce=249baaaba68197c9b1681e57d69c3193

如果所有这些都已正确发送,您就可以登录