$testingURL = "https://www.testing.com?......";
do {
$lastData = "";
curl_setopt($ch, CURLOPT_URL,$testingURL);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (AppleWebKit/537.3e/37.0.2062.124 Safari/537.36.....");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'username=testuser&password=testpwd');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers_curl);
curl_setopt($ch, CURLOPT_REFERER, "www.test...com");
$result = curl_exec($ch);
// sleep(3);
preg_match_all('/name="_checkkey".*?<\/td>/s',$result,$lastData);
$lastData[1] = preg_replace('/[^a-zA-Z0-9_ %\[\]\.\(\)%&-]/s', '', $lastData[1]);
$testingURL = "https://www.testing.com?_chkKey=".$lastData[1][0]."&chiId=".$lastData[1][1];
} while (isset($lastData[1][1]) && $lastData[1][1] == "checkOneMoreTime");
(注意:在我的代码中,我想停止执行最多3秒
如果我睡觉(3)(它会起作用), 在$ testingURL中将测试2到3秒然后表单将提交,同时我也想再次执行循环,
答案 0 :(得分:0)
do {
$lastData = "";
$result = "";
curl_setopt($ch, CURLOPT_URL,$testingURL);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (AppleWebKit/537.3e/37.0.2062.124 Safari/537.36.....");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'username=testuser&password=testpwd');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers_curl);
curl_setopt($ch, CURLOPT_REFERER, "www.test...com");
$result = curl_exec($ch);
sleep(3);
$testingURL = "";
preg_match_all('/name="_checkkey".*?<\/td>/s',$result,$lastData);
$lastData[1] = preg_replace('/[^a-zA-Z0-9_ %\[\]\.\(\)%&-]/s', '', $lastData[1]);
$testingURL = "https://www.testing.com?_chkKey=".$lastData[1][0]."&chiId=".$lastData[1][1]; } while (isset($lastData[1][1]) && $lastData[1][1] == "checkOneMoreTime");