ホームページ >バックエンド開発 >PHPチュートリアル >phpカールはBaiduホームページへのログインをシミュレートします

phpカールはBaiduホームページへのログインをシミュレートします

WBOY
WBOYオリジナル
2016-06-13 12:44:391092ブラウズ

phpcurl は Baidu ホームページへのログインをシミュレートします

この投稿は STONEWP によって最終編集されました: 2012-03-29 13:43:04 コードは次のとおりです:
<?php<br />
$url = "https://passport.baidu.com/?login&tpl=mn";<br />
//$url = "http://www.baidu.com/";<br />
$cookdir = "d:/www/html/mndl/cookie.txt";<br />
$ch =curl_init();<br />
curl_setopt ($ch, CURLOPT_URL, $url);<br />
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //この文は、ホストを検証しないように設定します。 <br />
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);<br />
curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookdir); // Cookie を保存し、ユーザーのブラウザ情報を送信し、アクセス ソースを送信します<br />
curl_setopt ($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (互換性; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)");<br />
curl_setopt ($ch, CURLOPT_REFERER, "http://www.baidu.com/");<br />
$contents =curl_exec($ch);<br />
curl_close($ch);<br />
<br />
/* 元のフォームのスタイル<br />
<input type="hidden" name="tpl_ok" value=""><br>
<input type="hidden" name="next_target" value=""><br>
<input type="hidden" name="tpl" value="mn"><br>
<input type="hidden" name="skip_ok" value=""><br>
<input type="hidden" name="aid" value=""><br>
<input type="hidden" name="need_pa​​y" value=""><br>
<input type="hidden" name="need_coin" value=""><br>
<input type="hidden" name="pay_method" value=""><br>
<input type="hidden" id="u" name="u" value="http://www.baidu.com/"><br>
<input type="hidden" name="return_method" value="get"><br>
<input type="hidden" name="more_param" value=""><br>
<input type="hidden" name="return_type" value=""><br>
<input type="hidden" name="psp_tt" value="0"><br>
<input type="hidden" id="password" name="password" value=""><br>
<input type="hidden" name="safeflg" id="safeflg" value=""><br>
<input type="hidden" name="isphone" value="tpl"><br>
*/<br>
$post_fields = array();<br>
$post_fields = preg_data($contents,'aid',$post_fields);<br>
$post_fields = preg_data($contents,'isphone',$post_fields);<br>
$post_fields['mem_pass'] = 'on' //ポストデータ配列 ログインステータスを記憶します<br>;
$post_fields = preg_data($contents,'more_param',$post_fields);<br>
$post_fields = preg_data($contents,'need_coin',$post_fields);<br>
$post_fields = preg_data($contents,'need_pa​​y',$post_fields);<br>
$post_fields = preg_data($contents,'next_target',$post_fields);<br>
$post_fields['password'] = 'password' //ポストデータ配列 ログインステータスを記憶します<br>;
$post_fields = preg_data($contents,'pay_method',$post_fields);<br>
$post_fields = preg_data($contents,'psp_tt',$post_fields);<br>
$post_fields = preg_data($contents,'return_method',$post_fields);<br>
$post_fields = preg_data($contents,'return_type',$post_fields);<br>
$post_fields = preg_data2($contents,'safeflg',$post_fields);<br>
$post_fields = preg_data($contents,'skip_ok',$post_fields);<br>
$post_fields = preg_data($contents,'tpl',$post_fields);<br>
$post_fields = preg_data($contents,'tpl_ok',$post_fields);<br>
$post_fields['u'] = 'http://www.baidu.com/';<br>
$post_fields['username'] = 'username' //ポストデータ配列 ログインステータスを記憶します<br>;
$post_fields['verifycode'] = '';<br>
<br>
$ch =curl_init();<br>
curl_setopt ($ch, CURLOPT_URL, $url);
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。