php - curl 如何创建cookie抓取网页信息,以下例子,怎么都无法抓取,求代码?
伊谢尔伦
伊谢尔伦 2017-04-10 14:58:19
[PHP讨论组]

http://www.postdanmark.dk/en/tracktrace/Pages/home.aspx 快递公司网址

运单号:RC376981536HK
通过输入快递公司网址,然后输入运单号查询快递跟踪信息,跳转到另外一个就是快递跟踪信息 的页面,我就是想抓取那个页面的快递信息,怎么都无法获取,好艰难的说,谁能帮我弄一个代码实例出来给我瞧瞧,听说是要创建cookie!!!!新手才学一个月,这个是师傅给出的任务!!!

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(3)
PHPz

你是使用c++的么? 如果是的话,请参考官方的例子:
http://curl.haxx.se/libcurl/c/cookie_interface.html
如果不是的话,请直接到 curl.haxx.se 中查找对应语言的设置方式

PHPz

如果你是指 curl 一个地址后,继续跟踪302跳转后的页面话, 命令行可以使用 -L参数,php 里可以给curl 加上 curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);

楼主是要把登录的cookie带过去,然后抓去网页内容吗? 这段示例代码是用登录完的cookie访问sf登录页的效果。

  header('Content-Type="text/html";charset="UTF-8"');
 $login_url = 'http://segmentfault.com/user/login';

 $ch = curl_init($login_url);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
 curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
 curl_setopt($ch, CURLOPT_COOKIE, "sfsess=" . rawurlencode('your sf.gg login cookie')); 

 $test = curl_exec($ch); 
 curl_close($ch);
 echo $test;

楼主可以把sfsess替换成自己的 cookie试试看效果。多个cookie分号分隔就行了。
CURLOPT_COOKIEFILE的用法: curl_setopt($ch, CURLOPT_COOKIEFILE, "/yourpath/cookie.txt");cookie.txt内容格式跟http头一样:Set-Cookie:sfsess=*********

黄舟

谁懂得的给个答案啊~!

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号