ログインをシミュレートするときに、PHP が CURL を読み取って Cookie ファイルを生成する方法
この記事の例では、ログインをシミュレートするために CURL を読み取るときに PHP がどのように Cookie ファイルを生成するかを説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです
PHP で CURL を使用してログインをシミュレートすると、次のコードのような Cookie ファイルが保存されます
コードをコピーします コードは次のとおりです:
$login_url = 'XXX';
$post_fields['メール'] = 'XXXX';
$post_fields['パスワード'] = 'XXXX';
$post_fields['origURL'] = 'XXX';
$post_fields['ドメイン'] = 'xxx.com';
//Cookie ファイルは Web サイトのルート ディレクトリの temp フォルダーに保存されます
$cookie_file = tempnam('./temp','cookie');
$ch =curl_init($login_url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_MAXREDIRS, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
カール_exec($ch);
カール_クローズ($ch);
// Cookie ファイルを持ってきて、アクセスする必要があるページにアクセスしてください
$send_url='xxx.com'
$ch =curl_init($send_url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
$contents =curl_exec($ch);
カール_クローズ($ch);
// Cookie ファイルをクリーンアップします
リンクを解除($cookie_file)
// Web ページのコンテンツを出力します
print_r($contents);
cookie プレフィックスが付いた一時ファイルを temp フォルダーに保存します (例: coo3A98.tmp ファイル)。
このファイルを開いて次のコードを取得します:
PHP を使用してファイルをフォーマットするには、次のコードを使用してそれを実現します
コードをコピーします
コードは次のとおりです:
$cookie_folder = ディレクトリ名(__FILE__)."/temp";
$lines = file($cookie_folder.'/coo3A98.tmp');
$trows = '';
foreach($lines as $line) {
If($line[0] != '#' && substr_count($line, "t") == 6) {
$tokens =explode("t", $line);
$tokens = array_map('trim', $tokens);
$tokens[4] = date('Y-m-d h:i:s', $tokens[4]);
$trows .= '
', $tokens; ' |
'
}
}
echo '
'.PHP_EOL.''.PHP_EOL.$trows.''.PHP_EOL.'
';
?>
実行後、下図のようにテーブルに書き込まれました
フィールドを読み取るだけの場合は、自分で変更できます。
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/906109.html
www.bkjia.com
true![](http://www.bkjia.com/uploads/allimg/141106/01033W5C-1.jpg?201410415408)
http://www.bkjia.com/PHPjc/906109.html
技術記事
PHP がログインを模擬するために CURL を読み取るときに Cookie ファイルを生成する方法 この記事では、PHP がログインを模擬するために CURL を読み取るときに Cookie ファイルを生成する方法について説明します。参考のためにみんなで共有してください。具体的な実装...