当前位置:  开发笔记 > 编程语言 > 正文

保存远程网页的cookie

如何解决《保存远程网页的cookie》经验,为你挑选了2个好方法。

我有一个PHP应用程序需要从另一个网页抓取内容,而我正在阅读的网页需要一个cookie.

我找到了有关如何使用cookie(http://groups.google.com/group/comp.lang.php/msg/4f618114ab15ae2a)进行此调用的信息,但是我不知道如何生成cookie,或者cookie的保存方式/位置.

例如,要通过wget阅读此网页,请执行以下操作:

wget --quiet --save-cookies cookie.file --output-document=who.cares \ 
  http://remoteServer/login.php?user=xxx&pass=yyy

wget --quiet --load-cookies cookie.file --output-document=documentiwant.html \
  http://remoteServer/pageicareabout.html

...我的问题是如何在PHP中执行'--save-cookies'位,以便我可以在后续PHP stream_context_create/file_get_contents块中使用cookie:

$opts = array(http'=> array(
  'method'=> "GET",
  'header'=>
    "Accept-language: en\r\n" .
    "Cookie: **NoClueAtAll**\r\n"
  )
);

$context = stream_context_create($opts);
$documentiwant = file_get_contents("http://remoteServer/pageicareabout.html",
  0, $context);

小智.. 14

Shazam - 有效!太多了!万一其他人偶然发现这个页面,这里需要详细说明:

    安装cURL(对我而言,就像在ubuntu中'sudo apt-get install php5-curl'一样简单)

    将之前列出的PHP更改为以下内容:

    
    

以上代码段受http://www.weberdev.com/get_example-4555.html的影响很大.



1> 小智..:

Shazam - 有效!太多了!万一其他人偶然发现这个页面,这里需要详细说明:

    安装cURL(对我而言,就像在ubuntu中'sudo apt-get install php5-curl'一样简单)

    将之前列出的PHP更改为以下内容:

    
    

以上代码段受http://www.weberdev.com/get_example-4555.html的影响很大.



2> Greg..:

使用cURL可能会更好.使用curl_setopt设置cookie处理选项.

如果这只是一次性的事情,你可以使用Firefox和Live HTTP Headers来获取标题,然后将其粘贴到PHP代码中.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有