您好,欢迎访问一九零五行业门户网

急用snoopy抓取EMS验证码,远程模拟查询单号,无法获取JSessionID的有关问题

急:用snoopy抓取ems验证码,远程模拟查询单号,无法获取jsessionid的问题?
会员life169之前在php版块发过一篇文章叫(用snoopy抓取ems验证码,远程模拟查询单号,取得查询结果)
链接是:http://topic.csdn.net/u/20100715/23/d58f2006-40ea-4cab-82e3-3bbcf4cd1e9f.html
可是我在测试的过程中却遇到一个问题,jsessionid,经常会取不到,
session_start(); 
include(snoopy.class.php); 
$url = http://www.ems.com.cn/qcgzoutquerynewaction.do?reqcode=gotosearch; 
$url2 = http://www.ems.com.cn/qcgzoutquerynewaction.do;
$snoopy = new snoopy;
$snoopy->fetch($url); //获取所有内容 
print_r($snoopy->headers);
打印头信息,返回的是:
array ( [0] => http/1.1 200 ok [1] => content-type: text/html; charset=gb2312 [2] => x-powered-by: servlet/2.4 jsp/2.0 [3] => accept-ranges: bytes [4] => connection: close [5] => date: tue, 15 mar 2011 11:24:53 gmt [6] => age: 1876 [7] => content-length: 22804 )
正确的返回信息应当是:
array ( [0] => http/1.1 200 ok [1] => cache-control: no-cache=set-cookie [2] => connection: close [3] => date: fri, 11 mar 2011 07:42:04 gmt [4] => content-type: text/html; charset=gb2312 [5] => set-cookie: jsessionid=n5sms1dmw1wy8lj48z1zhp1p2ks1gsgy5twtnxcypz1mvgyzk0lq!195316506; path=/ [6] => x-powered-by: servlet/2.4 jsp/2.0 )
前面返回的里面没有jsessionid, 导致在后面的查询中返回不了查询结果, 我已经整了2天了,在网上查了大量资料,还是没有头绪,现在有一个奇怪现象,如果在浏览器打开ems.php页面,过一段时间再刷新页面后,又会返回正确的headers信息,但是过一阵又不能正确返回,为什么会出现这种情况, 希望有大虾能帮我看看是怎么回事? 急
------解决方案--------------------
恩 好了 到这里下吧
http://download.csdn.net/source/3100240
其它类似信息

推荐信息