我需要从一个网站刮需要认证,即用户必须通过提供一个html形式的用户名和密码登录。连接不安全。我计划使用Pear framework来格式化请求。我被第一部分卡住了,那就是发布登录信息。如何提交表单数据?提前感谢您的帮助。
我已经安装了fiddler2,但不确定手动登录时要查找什么。
我正在使用curl,并且取得了一些成功。我删除了浏览器中的所有cookie,并登录到该网站。在fiddler中,它为我提供了以下请求头
GET http://example.com/niceday/dirlogin.php HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-CA
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Accept-Encoding: gzip, deflate
Host: example.com
DNT: 1
Connection: Keep-Alive
Cookie: chatRoomUserID=119972; ASPSESSIONIDSSRQCCBR=26jqrt3f8dus2l2s42g4r9npp5我对最后一个问题感到困惑,我是在请求cookie吗?
在我的脚本中,我伪造了第一个请求
curl_setopt($ch,CURLOPT_HTTPHEADER, array('GET http://example.com/niceday /dirlogin.php HTTP/1.1',
'Accept: text/html, application/xhtml+xml, */*',
'Referer: http://r2sports.bkoehler.j43.ca/tourney/tourneyTop.php?TID=3206',
'Accept-Language: en-CA',
'User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)',
'Accept-Encoding: gzip, deflate',
'Connection: Keep-Alive',
'DNT: 1',
'Host: r2sports.bkoehler.j43.ca',
'Cookie: chatRoomUserID=995222; ASPSESSIONIDSSRQCCBR=26jqrt3f8dus2l2s42g4r9npp5'));发布于 2011-08-03 15:16:00
您可以考虑使用http://www.php.net/manual/en/book.curl.php#90821并设置cookie文件位置,这样您的脚本就可以保持身份验证。下次联系该网站时,它将使用之前保存在cookie文件位置的文件中的cookie。
发布于 2011-08-03 16:02:25
如何提交表单数据?
下面是如何实现的:
<form action="./login.php" method="post">
<input type="text" name="username" />
<input type="password" name="password" />
</form>使用login.php处理您的$_POST数据。
https://stackoverflow.com/questions/6922859
复制相似问题