当前位置:   article > 正文

PHP使用CURL实现对带有验证码的网站进行模拟登录的方法_php模拟验证码浏览器登录

php模拟验证码浏览器登录
  1. <?php
  2. /**
  3.  * 模拟登录
  4.  */
  5. //初始化变量
  6. $cookie_file = "tmp.cookie";
  7. $login_url = "http://111.com/member/login";
  8. $verify_code_url = "http://111.com/member/verifycode";
  9. $url = "http://111.com/member/loginprocess";
  10. echo "正在获取COOKIE...\n";
  11. $curl = curl_init();
  12. $timeout = 10;
  13. curl_setopt($curl,CURLOPT_URL, $login_url);
  14. curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
  15. curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,$timeout);
  16. curl_setopt($curl,CURLOPT_COOKIEJAR,$cookie_file); //获取COOKIE并存储
  17. $contents = curl_exec($curl);
  18. curl_close($curl);
  19. echo "COOKIE获取完成,正在取验证码...\n";
  20. print_r($contents);
  21. //取出验证码
  22. $curl = curl_init();
  23. curl_setopt($curl,CURLOPT_URL,$verify_code_url);
  24. curl_setopt($curl,CURLOPT_COOKIEFILE, $cookie_file);
  25. curl_setopt($curl,CURLOPT_HEADER,0);
  26. curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
  27. $img=curl_exec($curl);
  28. curl_close($curl);
  29. $fp=fopen("verifyCode.jpg","w");
  30. fwrite($fp,$img);
  31. fclose($fp);
  32. echo "验证码取出完成,正在休眠,20秒内请把验证码填入code.txt并保存\n";
  33. //停止运行20秒
  34. sleep(20);
  35. echo "休眠完成,开始取验证码..\n";
  36. $code = file_get_contents("code.txt");
  37. echo "验证码成功取出:$code\n";
  38. echo "正在准备模拟登录...\n";
  39. $post =http_build_query(['user'=>'18789866111','password'=>'123456','verify'=>$code]);
  40. $curl = curl_init();
  41. curl_setopt($curl, CURLOPT_URL, $url);
  42. curl_setopt($curl, CURLOPT_HEADER,0);
  43. curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
  44. curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
  45. curl_setopt($curl, CURLOPT_COOKIEFILE, $cookie_file);
  46. $result=curl_exec($curl);
  47. curl_close($curl);
  48. //print_r($result);
  49. $result=json_decode($result,true);
  50. if(substr_count($result['msg'],"登录成功"))
  51. {echo "登录成功\n";}
  52. else{echo "登录失败\n";
  53. exit;
  54. }
  55. ?>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/667960
推荐阅读
相关标签
  

闽ICP备14008679号