PHP利用curl获取验证码,发送cookie二次抓取
<?php $CookieFile =tempnam( "./tmep" , "beast" ); if (isset( $_GET [ "img" ])){ $url = 'http://HdhCmsTestphpfensi测试数据/phper/php.htm' ;//验证码code $ch = curl_init( $url ); curl_setopt( $ch ,CURLOPT_COOKIEJAR, $CookieFile ); //把返回来的cookie信息保存在文件中 curl_exec( $ch ); curl_close( $ch ); exit (); } if (isset( $_POST [ 'd' ])){ $b = $_POST [d]; //验证码 $p = "waybillNo=1721269381&inputcode=" . $b ; $ch = curl_init(); // 2. 设置选项,包括URL curl_setopt( $ch ,CURLOPT_URL, "http://HdhCmsTestphpfensi测试数据" ); curl_setopt( $ch ,CURLOPT_COOKIEJAR, $CookieFile ); curl_setopt( $ch ,CURLOPT_COOKIEFILE, $CookieFile ); //同时发送Cookie curl_setopt( $ch ,CURLOPT_RETURNTRANSFER, 1); curl_setopt( $ch ,CURLOPT_POST, 1); curl_setopt( $ch ,CURLOPT_POSTFIELDS, $p ); //提交查询信息 $s = curl_exec( $ch ); curl_close( $ch ); $ch = curl_init(); curl_setopt( $ch ,CURLOPT_URL, http: //HdhCmsTestphpfensi测试数据); curl_setopt( $ch ,CURLOPT_COOKIEFILE, $CookieFile ); //同时发送Cookie curl_setopt( $ch ,CURLOPT_COOKIEJAR, $CookieFile ); curl_setopt( $ch ,CURLOPT_RETURNTRANSFER, 1); curl_setopt( $ch ,CURLOPT_POST, 1); curl_setopt( $ch ,CURLOPT_POSTFIELDS, $p ); //提交查询信息 $bs = curl_exec( $ch ); echo $bs ; //输出结果 curl_close( $ch ); } else { ?> <form id= "form1" name= "form1" method= "post" action= "" > <img src= "?img=true" /><!--由服务器端取图片内容并输出--> <input type= "text" name= "d" /> <input type= "submit" name= "button" id= "button" value= "提交" /> </form> <?php } ?>查看更多关于PHP利用curl获取验证码,发送cookie二次抓取 - php高级的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did30138