本帖最后由 meinaozi 于 2011-04-03 19:04:13 编辑

解决方案 »

  1.   

    我还没研究完stream,暂时不晓得你的程序不过理论上在输入验证码的同时就应该发送有效的cookie验证码本身就依赖session,所以cookie是不能少的
      

  2.   

    个人建议的header options 最好这样写,兼容服务器
    $optionget  =  array ( 'http'  =>  array (
        'method'  =>  "GET" ,
        'header'  =>  array(
            "User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.21022; .NET CLR 3.0.04506; CIBA)",
            "Accept:*/*",
            "Referer:"  .  $referer,
            "Cookie:"  .  $cookie
        )
    ));
    另外如果你第一次请求验证码的时候,肯定有session相关信息的,那个时候都要记录sessionid了,否则服务器怎么找你的验证信息呢?
      

  3.   

    感谢2楼, 第一次请求验证码就要开始记录cookie.
    然后做登陆动作的时候,发出去,然后服务器还会返回一组cookie.组合起来,就可以用登陆状态采集了。
      

  4.   

    即:Cookie: ASP.NET_SessionId=ksk42e45hwdayz45uuse0s45;