大多数php / curl示例均建议创建curl cookie,而我正在使用它来抓取网络。 这是脚本http://www.php.net/manual/en/ref.curl.php#93163 ,下面是相关摘录:

$url = str_replace( "&", "&", urldecode(trim($url)) );

$cookie = tempnam ("/tmp", "CURLCOOKIE");
$ch = curl_init();
curl_setopt( $ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1" );
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_COOKIEJAR, $cookie );
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt( $ch, CURLOPT_ENCODING, "" );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_AUTOREFERER, true );
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, false );    # required for https urls
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
curl_setopt( $ch, CURLOPT_TIMEOUT, $timeout );
curl_setopt( $ch, CURLOPT_MAXREDIRS, 10 );
$content = curl_exec( $ch );
$response = curl_getinfo( $ch );
curl_close ( $ch );

现在,我在/ tmp中注意到php创建了3 GB的curl cookie文件。

我印象中这是自动清除的,是否可以从php / curl中做到这一点?

===============>>#1 票数:5 已采纳

首先必须是unset ,然后是$ ch ,然后应该调用@unlink命令。

===============>>#2 票数:-1

您可以删除文件。

  ask by giorgio79 translate from so

未解决问题?本站智能推荐:

1回复

PHP CURLOPT_COOKIEFILE / CURLOPT_COOKIEJAR在远程服务器上似乎不起作用

我在使用curl传递cookie时遇到一个相当有趣的问题。 我有一个脚本登录到我公司的排队系统,然后从成功登录中获取cookie。 稍后,脚本将重新调用这些cookie,以查询系统并解析输出。 该脚本可以在localhost上完美运行,但不能迁移到公司服务器上。 它正在创建cookie文
1回复

为什么CURLOPT_COOKIEJAR以某种方式保存不同的Cookie值而不是Set-Cookie标头?

TL; DR: 我有一些非常简单的PHP代码利用cURL来发出单个HTTP请求(实际上,对于Diaspora * pod,尽管这与问题无关)。 代码记录Web服务器返回的任何cookie,然后手动将这些值设置为libcurl的CURLOPT_COOKIE 。 然而,在试图追捕的错误,我
2回复

CURLOPT_COOKIEJAR和cookie文件

我正在使用CURLOPT_COOKIEJAR(curl库),并将cookie保存在文件“ cookie.txt”中。 我找不到文件。 它在哪里? 我在项目文件夹中搜索,什么都没有。 这是我的代码:
1回复

当CURLOPT_COOKIESESSION设置为默认值时,为什么需要CURLOPT_COOKIEJAR

我有一个卷曲脚本,用于远程控制登录(政府)网站。 该网站有一个政府范围的登录系统,在各种服务器上使用5个重定向。 当我设置CURLOPT_COOKIEJAR时,我发现登录有效,但是我不明白为什么这是必要的。 http://www.php.net/manual/en/function.c
1回复

PHP CURL将cookie保存到cookiejar中,但不使用它

我有一个PHP脚本,它使用CURL登录到带有简单登录页面的站点。 它向站点发送初始请求,并查看其是否已经登录(由于cookie)或登录页面是否出现-如果已登录,则登录。 但是,最近我注意到,每次脚本运行时,它都永远不会登录。使用VERBOSE深入探查头表明,从未使用过COOKIEFILE
2回复

PHP Curl中的cookiejar

在PHP Curl情况下,当我们需要在网络抓取时存储/读取cookie时,感觉很多资源鼓励使用文件来处理带有这些选项的cookie 这里的底线是他们使用单个文件作为cookiejar(通常是.txt文件)。 但在实际情况中,我们的网站不仅可以通过一台计算机访问,而且很可能有很多计算
1回复

如何在没有cookiejar的下一个请求中重复使用带有curl和php的cookie

我在负载均衡器下有多个应用程序节点,这使我难以在文件上保存cookie,因为它可能会保存在一个节点上,但是下一个请求可能指向该文件不存在的另一个节点。 这是我用来执行请求的代码,该代码可以在单个节点上正常运行,但不能在多个节点上正常运行: 那么,还有其他方法可以直接获取“ Set-
4回复

除了CURLOPT_COOKIEFILE,如何使用PHP curl发送cookie?

提交表单后,我正在从网站上抓取一些内容。 问题是该脚本有时会失败,例如,每5次中有2次脚本失败。 我正在使用php curl,COOKIEFILE和COOKIEJAR处理cookie。 但是,当我观察到浏览器的已发送标头(从浏览器访问目标网站并使用实时http标头)和php发送的标头时,发
1回复

卷曲:无法将cookie保存在cookiejar中

我正在尝试登录kiala网站。 Kiala是一个“运输”公司,我想用php获取一个新的运输令牌。 由于没有用于执行此操作的api,因此尝试使用curl。 现在我对卷曲没有太多的经验,也无法卷曲将饼干保存到罐中。 我已经尝试了很多事情,但现在到了要撕掉头发的地步。 我需要这些Cookie
1回复

设置请求重定向中保存在cURL CookieJar文件中的Cookie

我正在一个项目中,我正在使用api与单独站点上的电子商务商店进行交互。 我可以通过api将项目添加到购物篮,并使用cURLS CookieJar保存状态。 要结帐,我只想链接到主要电子商务网站上的实际结帐过程。 我需要能够将CookieJar中存储的cookie与重定向请求一起发送。