我需要登录(发帖)curl
到php
一个网站,然后保存一个带有身份验证的cookie,并用它来访问来自同一网站的正常链接。
他们只有一半的免费版文本可用,但全部都是高级版。因此,如果可能的话,我想在以后多次保存 cookie。
cURL
我对and有所了解PHP
,但我还没有提出解决方案。
多谢你们!
您需要使用 cookiejar 参数在两个请求之间共享一个文本文件。
/* Create a temporary cookie file */
$ckfile = tempnam ("/tmp", "COOKIES");
/* Visit the first page */
$ch = curl_init ("http://somedomain.com/");
curl_setopt ($ch, CURLOPT_COOKIEJAR, $ckfile);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec ($ch);
/* Visit the second page */
$ch = curl_init ("http://somedomain.com/cookiepage.php");
curl_setopt ($ch, CURLOPT_COOKIEFILE, $ckfile);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec ($ch);
从http://coderscult.com/php-curl-cookies-example/修改的示例
编辑:我应该已经阅读了 tempnam 的文档...它创建了一个唯一的文件名,因此不需要添加额外的用户特定前缀,除非您希望以后能够识别该文件。您还可以查看调用 fclose 时自动删除的 tmpfile()(通常在 php 请求结束时)。