L2jNevs
Новичок
Здравствуйте, уважаемые умельцы. Суть, собственно, в названии темы. Используется следующий код:
$user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.2.13) ' .
'Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)';
$login = 'логин';
$password = 'пароль';
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, 'http://www.ok.ru/dk?cmd=AnonymLogin&st.cmd=anonymLogin&tkn=941');
$post = array(
'st.redirect' => '',
'st.posted' => 'set',
'st.email' => $login,
'st.password' => $password,
'st.screenSize' => '',
'st.browserSize' => '',
'st.flashVer' => ''
);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
$answer = curl_exec($ch);
// в ответ получили главную страницу
echo $answer;
curl_close($ch);
В код добавил поиск по переменной $answer на ключевое слово, дабы определить, авторизовался ли пользователь или нет. Если да - вывод сообщения, если нет - die.
Авторизовался на одном аккаунте, заработало. На хосте создался файл cookie.txt, записались данные. Успешно спарсил Имя, Фамилию и информацию о юзере. Попытался проделать с другим аккаунтом это - не работает. Подскажите пожалуйста, как это исправить? Дабы можно было авторизоваться каждый раз отдельно. Пробовал избавляться от файлов куки путём удаления, но не вышло ничего.
$user_agent = 'Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.2.13) ' .
'Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729)';
$login = 'логин';
$password = 'пароль';
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, 'http://www.ok.ru/dk?cmd=AnonymLogin&st.cmd=anonymLogin&tkn=941');
$post = array(
'st.redirect' => '',
'st.posted' => 'set',
'st.email' => $login,
'st.password' => $password,
'st.screenSize' => '',
'st.browserSize' => '',
'st.flashVer' => ''
);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
$answer = curl_exec($ch);
// в ответ получили главную страницу
echo $answer;
curl_close($ch);
В код добавил поиск по переменной $answer на ключевое слово, дабы определить, авторизовался ли пользователь или нет. Если да - вывод сообщения, если нет - die.
Авторизовался на одном аккаунте, заработало. На хосте создался файл cookie.txt, записались данные. Успешно спарсил Имя, Фамилию и информацию о юзере. Попытался проделать с другим аккаунтом это - не работает. Подскажите пожалуйста, как это исправить? Дабы можно было авторизоваться каждый раз отдельно. Пробовал избавляться от файлов куки путём удаления, но не вышло ничего.