首页 > 如何用curl模拟带有图片验证码的表单登录?

如何用curl模拟带有图片验证码的表单登录?

原表单的图片验证码是网页调用的:
http://202.114.74.198/GenImg

用php curl模拟登录的时候,我同样用这样的方式来调用:

 <input name=yzm type=text id="yzm" size="6" maxlength="4" length=10> 大写字母<img src="GenImg" align="absmiddle"> 

这样登录后提示验证码错误。。应该是session值改变的原因。
因此请教如何做才能正确登录?


先了解下验证码的原理再来研究如何破解,保证提取验证码在提交时是有效的基本就能搞定,至于能不能自动识别验证码又是另外一会事


没太看明白~~但是据我所知,验证码确实是以来session来做的,而session一般是把id存在cookie里的,所以可以通过set一个sessionid的cookie来模拟session。不过~~验证码是怎么识别出来的呢...

我看了你 http://202.114.74.198/ 的这个网站,cookie里有一个叫 JSESSIONID 的。那么可以通过

<?php
$sessionidValue = "就那个cookie的值";
$curlHandler = curl_init("http://202.114.74.198/");
$strCookie = 'JSESSIONID=' . $sessionidValue . '; path=/';
session_write_close();
curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, 1);
curl_setopt( $curlHandler, CURLOPT_COOKIE, $strCookie);
$response = curl_exec($curlHandler);
curl_close($curlHandler);

代码类似就这样吧~~~自己调整下下~~~

【热门文章】
【热门文章】