ホームページ > バックエンド開発 > PHPチュートリアル > 、curl シミュレートされたログインに関連する問題

、curl シミュレートされたログインに関連する問題

WBOY
リリース: 2016-06-13 12:53:39
オリジナル
1078 人が閲覧しました

専門家に来てください。curl のシミュレートされたログインの問題
シミュレートされたログインを実行したいのですが、通常、Web サイトはフォームの送信があれば正常にログインをシミュレートできます
AliExpress (https://login.aliexpress.com/) などの他のウェブサイト

私のコードはここに書かれています


関数 vlogin($url,$request){
$cookie_jar = tempnam('./tmp','cookie');//現在のディレクトリにランダムなファイル名で一時ファイルを生成します
$ch =curl_init() //curl モジュールを初期化します
curl_setopt($ch,CURLOPT_URL,$url);//ログインページアドレス
curl_setopt($ch, CURLOPT_POST, 1);//ポスト経由で送信
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);//送信するコンテンツ
// $cookie_jar に返された Cookie 情報を $cookie_jar ファイルに保存します
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
//返されたデータを自動的に表示するかどうかを設定します
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//ヘッダー情報を表示するかどうかを設定
curl_setopt($ch, CURLOPT_HEADER, false); //ページコンテンツを出力するかどうかを設定
curl_setopt($ch, CURLOPT_NOBODY, false);
curl_exec ($ch)
curl_close($ch); //ログイン後にデータを取得します
return $cookie_jar;
}

//ログイン成功後に Cookie を通じてページ コンテンツを取得します
関数 get_content_by_cookie($url,$cookie_jar){
$ch2 =curl_init(); curl_setopt($ch2, CURLOPT_URL, $url);
curl_setopt($ch2, CURLOPT_HEADER, false);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch2, CURLOPT_COOKIEFILE, $cookie_jar);
$orders=curl_exec($ch2); curl_close($ch2)
return $orders;
}

function clear_cookie($cookie_tmp_name){
@unlink($cookie_tmp_name);
}


$list_url='http://cn.ae.alibaba.com/index.htm';
$login_url='https://login.aliexpress.com/';
$post_data='pd=aliexpress&xloginPassport=******&xloginPassword=******';
$cookie_file=vlogin($login_url,$post_data); $tmp_curl=get_content_by_cookie($list_url,$cookie_file);
echo $cookie_file;
echo $tmp_curl;

//clear_cookie($cookie_file);

?>


しかし、ログインに失敗しました。$login_url が間違っていると思います。AliExpress でフォームが送信されていないため、コードが理解できません。アドバイスをお願いします。
ありがとう!



-----解決策--------------------------------

vlogin 関数を変更できます。戻りヘッダー本体を確認してください
関数 vlogin($url,$request){ $cookie_jar = tempnam('./tmp','cookie');//現在のディレクトリにランダムなファイル名で一時ファイルを生成します
$ch =curl_init() //curl モジュールを初期化します
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート