2013-05-07 95 views
0

我想用php curl与搜索表单进行交互,我缺少2个url参数,当提交表单被搜索时看起来是分配给我的,问题是因为我正在使用CURL GET请求,没有2个令牌,我不能建立正确的URL,(似乎是对时间敏感的),这里是我迄今为止打造的URL使用php抓取URL会话令牌

$url="http://mysite/cgi-bin/Pwebrecon.cgi?Search_Arg=$argumentvariable&PID=q3a1yMo8IHMJV0b9VnWf2lbLc1SIJ(some random token here)&SEQ=20130506222916(appears to be time format)"; 
$headers = array(
    'Host: mysite', 

); 
$ch = curl_init();     
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_TIMEOUT, 15); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($ch, CURLOPT_REFERER, 'http://somesite.org'); 
$response = curl_exec($ch); 

我大概可以caculate的序列,但我卡在如何获得PID

回答

0

使用parse_str()

$url="http://mysite/cgi-bin/Pwebrecon.cgi?Search_Arg=$argumentvariable&PID=q3a1yMo8IHMJV0b9VnWf2lbLc1SIJ(some random token here)&SEQ=20130506222916(appears to be time format)"; 

$parsed = parse_url($url); 
parse_str($parsed['query'], $data); 

echo $data['pid'];