ホームページ >バックエンド開発 >PHPチュートリアル >curl シミュレートされたログインの実装チュートリアル_PHP チュートリアル

curl シミュレートされたログインの実装チュートリアル_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:08:16959ブラウズ

curl模擬ログイン実装チュートリアル

126メールボックス、Renrenなどへの模擬ログイン。必要に応じて修正してください。コードは次のとおりです

//認証コードWebサイトへのログインをシミュレートし、まず認証コード画像のCookieを取得します

define('SCRIPT_ROOT',dirname(__FILE__).'/');

$cookieFile = SCRIPT_ROOT.'cookie.tmp';

/*シミュレートされたブラウザ*/

$user_agent = "Mozilla/4.0 (互換性; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)";

//ここで Cookie を知っている場合は、ターゲットのブラウザに直接送信できます

//$cookie = "lang=zh-cn; JSESSIONID=6AF7DA3F6A5FC3ECA39A7485C3FDBBAE";

$header = 配列(

「ホスト:login.bioman.com」、

「参照元: http://www.bioman.com」、

);

//認証コード画像URL

関数getCookie($url){

グローバル $cookieFile;

$curl =curl_init () // CURLセッションを開始します

;

curl_setopt ( $curl, CURLOPT_URL, $url ); // アクセス先のアドレス

curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0); // 認証証明書のソースを確認します

curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, 1 ); // 証明書から SSL 暗号化アルゴリズムが存在するかどうかを確認します

curl_setopt ( $curl, CURLOPT_HTTPGET, 1 ); // 通常の GET リクエストを送信します

curl_setopt($curl,CURLOPT_COOKIEJAR, $cookieFile); // 返されたクッキー情報をファイルに保存します

$res =curl_exec($curl);

curl_close($curl);

}

関数ログイン($url){

グローバル $cookieFile,$header,$agent;

$data = array(

「名前」=>「バイオマン」

);

$curl =curl_init () // CURLセッションを開始します

;

curl_setopt ( $curl, CURLOPT_URL, $url ); // アクセス先のアドレス

curl_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0); // 認証証明書のソースを確認します

curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, 1 ); // 証明書から SSL 暗号化アルゴリズムが存在するかどうかを確認します

curl_setopt ( $curl, CURLOPT_USERAGENT, $agent ); // ユーザーが使用するブラウザをシミュレートします

curl_setopt($curl, CURLOPT_HTTPHEADER, $header) //ヘッダー情報を設定する場所

@curl_setopt ( $curl, CURLOPT_FOLLOWLOCATION, 1 ); // 自動ジャンプを使用します

;

//curl_setopt ( $curl, CURLOPT_HTTPGET, 1 ); // 通常の GET リクエストを送信します

curl_setopt ( $curl, CURLOPT_POST, 1 ); // 通常の Post リクエストを送信します

curl_setopt ( $curl, CURLOPT_POSTFIELDS, $data ); // 送信されたデータパッケージを投稿します

//curl_setopt ( $curl, CURLOPT_COOKIE, $cookie) // Cookie コンテンツを直接送信します

curl_setopt($curl,CURLOPT_COOKIEFILE, $cookieFile) //Cookieファイルを送信します

curl_setopt ( $curl, CURLOPT_TIMEOUT, 120 ); // 無限ループを防ぐためにタイムアウト制限を設定します

curl_setopt ( $curl, CURLOPT_HEADER, 0 ); // 返されたヘッダー領域の内容を表示しません

curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, 1 ); // 取得した情報はファイルストリームの形式で返されます

$res =curl_exec ($curl) // 操作を実行します

;

if (curl_errno ( $curl )) {

「失敗: Errno」を返します。curl_error ( $curl );

}

curl_close ( $curl ); // CURL セッションを閉じる

$res を返す;

}

//1.

$auth_url = "http://www.bioman.com/auth";

getCookie($auth_url); //認証コードCookieを取得します

//2.

$url = 'http://www.bioman.com/home' //ログイン後に送信されたURL

;

$res = login($url);

print_r($res);

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/952698.html技術記事 Curl のシミュレートされたログイン実装チュートリアルは、126 メールボックスへのログインをシミュレートします。Renren などは、必要に応じて変更できます。コードは次のとおりです。//ログイン確認コードの Web サイトをシミュレートし、最初に確認コードの画像の c を取得します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。