Прежде всего, было бы удобно, если бы вы поместили линии скручивания в функцию.
Теперь шаги должны быть довольно простыми.
РЕДАКТИРОВАТЬ
Убедитесь, что cookie.txt находится в том же каталоге, что и ваш php-файл.и убедитесь, что это доступно для записи.(chmod 777), чтобы проверить:
if (is_writable('cookie.txt')) {
echo 'The cookie is writable';
} else {
echo 'The cookie is not writable';
## start by making it writable :
if (! chmod ( 'cookie.txt', 0777 ))
die ( 'chmod() failed on file cookie.txt' );
}
- войти и сохранить данные cookie для входа в систему с помощью curl.(убедитесь, что cookie.txt существует и доступен для записи).
- Сделайте еще один завиток С cookie и включите страницу.
Примерно так:
//@param string $url : url of page/file
//@param bool $binary : binary file.
//@param string $post : post data in format : formvar1=VAR1&formvar2=VAR2
//@param string $cookie : cookie file.
function curl($url ,$binary=false,$post=false,$cookie =false ){
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url );
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_REFERER, $url);
curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
if($cookie){
$agent = "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)";
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
}
if($binary)
curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1);
if($post){
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
}
return curl_exec ($ch);
}
Затем войдите:
$username="username";
$password="password";
$url="https://login.comcast.net/login";
$cookie="cookie.txt";
$postdata = "user=".$username."&passwd=".$password."&rm=2&deviceAuthn=false&forceAuthn=true&s=ccentral-cima&r=comcast.net&continue=http://xfinity.comcast.net/";
// function
$ch = curl($url,false,$postdata,$cookie);
Вы вошли в систему?проверьте содержимое файла cookie.txt.
Шаг 2, найдите вторую страницу.
$url ='http://xfinity.comcast.net/'
$cookie="cookie.txt";
$ch =curl($url,false,false,$cookie);
echo $ch;
Что-то в этом роде ... Дайте мне знать, если это работает.