ホームページ >バックエンド開発 >PHPチュートリアル >CURL によってキャプチャされた Web ページは相対パスを通じて他のページを参照します。Cookie の問題を解決するにはどうすればよいですか?

CURL によってキャプチャされた Web ページは相対パスを通じて他のページを参照します。Cookie の問題を解決するにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-23 14:13:121415ブラウズ

curl 相対パス Cookie

たとえば、curl を使用してページ A をクロールします。ページ A は相対パスを通じてページ B を参照します。ページ B には Set-Cookie ヘッダーがありますが、ページ A には Set-Cookie がありません。
ページ A をクロールするためにカールすることしかできませんが、Cookie がページ B に設定されているため、Cookie をクロールできません。専門家に問題を解決してもらいましょう!どうもありがとうございます!

ディスカッションへの返信(解決策)

2回/複数回フェッチ
実際、これはajax/検証コードなどのために行われます。

	header("Content-type:text/html;charset=utf-8");	function request_by_curl($remote_server, $post_string)	{		$ch = curl_init();		curl_setopt($ch, CURLOPT_URL, $remote_server);		curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);		curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);		curl_setopt($ch, CURLOPT_NOBODY, false);		curl_setopt($ch, CURLOPT_HEADER,true);		curl_setopt($ch, CURLOPT_HTTPHEADER, array());		$data = curl_exec($ch);		curl_close($ch);		return $data;	}	//获取验证码	file_get_contents("http://jysx.scnu.edu.cn/VerifyImg.aspx");	$cookie = $http_response_header[6];	$code = substr($cookie,23,4);	echo $code."<br>";		//post登录	$remote_server = "http://jysx.scnu.edu.cn/login.aspx";	$post_string = 'act=login&type=ajax&name=20102301025&pass=523523&verify='.$code;	echo request_by_curl($remote_server,$post_string);


これはSouth China Normalへのログインをシミュレートするために使用したphpですインターンシップを獲得するための大学 コードが機能しないようです

機能します! ! ! ! !

なぜこのウェブサイトはヘッダー情報に認証コードを記述するのですか? ?

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。