
11.01.2010, 07:19
|
|
Новичок
Регистрация: 30.03.2009
Сообщений: 10
Провел на форуме: 40741
Репутация:
3
|
|
как загрузить на компьютер значение капчи
как загрузить/сохранит на компьютер значение капчи, что бы потом отправить на распознание
PHP код:
// Создаем подключение
if( $curl = curl_init() ){
// Нужно загрузить главную страницу бобра
curl_setopt($curl,CURLOPT_URL,'http://id.rambler.ru/script/newuser.cgi');
// Нужно помнить кукисы!
curl_setopt($curl, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($curl, CURLOPT_COOKIEFILE, "cookiefile");
// Скачанный код возвращаем в переменную а не в поток
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
// "Следовать туда, куда зовут". Если сервис выдает 302 код, мы следуем по этой ссылке
curl_setopt($curl,CURLOPT_FOLLOWLOCATION,true);
// Таймаут, если сервис не отвечает больше 30 секунд, выходим
curl_setopt($curl,CURLOPT_CONNECTTIMEOUT,30);
// Активируем GZIP сжатие трафика
curl_setopt($curl,CURLOPT_ENCODING,'gzip,deflate');
// Соврем Бобру, напишем в юзер-агент неправду
curl_setopt($curl,CURLOPT_USERAGENT,'$user_agent');
// Если все ок, в $html вернется html код главной страницы
if( $html = curl_exec($curl) ){
// Указываем куда отправлять запрос
curl_setopt($curl,CURLOPT_URL,'http://id.rambler.ru/script/newuser.cgi');
// Указываем подключению, что слать нужно не GET (по умолчанию), а POST запросы
curl_setopt($curl,CURLOPT_POST,TRUE);
// Указываем, что именно отправлять в POST данных, на этой стадии происходит ввод логина/пароля
curl_setopt($curl,CURLOPT_POSTFIELDS,"login=$login&firstname=$name&lastname=$lastname");
if($html = curl_exec($curl)){
// ищем секретный id-картинки
if(preg_match('#<img src="http://id.captcha.rambler.ru/(.*).jpg" alt="" border="0" vspace="2">#', $html, $capcha)){
}
|
|
|