|
| Дата |
|
USD/RUB | 93.4409 | BTC/USD | 64738.8598 |
|
|
|
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии. |
23.04.2009, 15:52
|
#1
|
hustle
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
|
Ввести каптчу во время выполнения php скрипта
Скрипт проходит этапы регистрации и доходит до каптчи. Теперь мне нужно выплюнуть картинку каптчи (я ее на сервер сохраняю) и форму для ввода ее значения.
Походу нужно как-то яваскриптом? Как это сделать в одном скрипте, в одном файле?
|
|
|
23.04.2009, 15:53
|
#2
|
Senior Member
Регистрация: 15.11.2008
Сообщений: 13,230
Бабло: $247845891
|
На умаксе была такая тема
|
|
|
23.04.2009, 15:55
|
#3
|
Senior Member
Регистрация: 15.11.2008
Сообщений: 13,230
Бабло: $247845891
|
|
|
|
23.04.2009, 15:57
|
#4
|
hustle
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
ТС -->
|
ТС
Цитата:
Сообщение от imgreen
На умаксе была такая тема
|
Вот смотрю - не могу найти. Буду благодарен если тыкнешь носом.
добавлено: Ага читаю. Всё понял, только разбивать на части. Так и думал.
|
|
|
23.04.2009, 22:14
|
#5
|
Ебланнед
Регистрация: 25.04.2008
Сообщений: 101
Бабло: $10120
|
Цитата:
Сообщение от Hector
Вот смотрю - не могу найти. Буду благодарен если тыкнешь носом.
добавлено: Ага читаю. Всё понял, только разбивать на части. Так и думал.
|
Зачем циклить? Запустил пост данные на обработку регистартору получил капчу выел ее с формой для ввода, ее ответ отправляют обратно. И процес повторяется..
|
|
|
23.04.2009, 22:45
|
#6
|
Senior Member
Регистрация: 01.11.2007
Сообщений: 2,269
Бабло: $288535
|
Доходишь скриптом до нужного места, сохраняешь куки в файл, сохраняешь капчу, скрипт останавливаешь. показываешь юзеру капчу, после ввода капчи, скрипт берет эту же куку и забивает капчу, идет дальше.
или другой вариант:
скрипт доходит до капчи, сохраняет её в файл, а сам уходит в цикл на предмет проверки заполненности определенного текстового файла, капча выводится юзеру аяксом на экран. юзер вводит капчу, код капчи сохраняется в этот текстовый файл, скрипт это видит, читает файл и забивает код капчи и идет дальше.
|
|
|
24.04.2009, 00:31
|
#7
|
Senior Member
Регистрация: 14.11.2008
Сообщений: 184
Бабло: $13920
|
сохраняешь
отправляешь на анти-капчу
получаешь ответ
идёшь дальше
отправление капчи
PHP код:
function add_cap($filename)
{
$postdata = array(
'method' => 'post',
'key' => 'тут твой кей',
'file' => '@'.$filename, //полный путь к файлу
'phrase' => '0',
'regsense' => '1',
'numeric' => '0',
'min_len' => '0',
'max_len' => '0',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.anti-captcha.com/in.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
$result = curl_exec($ch);
$ex = explode("|", $result);
$captcha_id = @$ex[1];
return @$captcha_id;
}
забираем код
PHP код:
function get_cap($captcha_id)
{
$x=0;
$ch=curl_init('http://anti-captcha.com/res.php?key=тут_твой_кей&action=get&id='.$captcha_id);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
while(true)
{
$result = curl_exec($ch);
if (strpos($result, 'ERROR')!==false)
{
return false;
}
if ($result=="CAPCHA_NOT_READY")
{
sleep(5);
}
else
{
$ex = explode('|', $result);
if (trim($ex[0])=='OK') return trim($ex[1]);
}
$x++;
if($x>10)
break;
}
}
и тогда не надо её выводить )
|
|
|
04.05.2009, 21:32
|
#8
|
n/a
Регистрация: 18.02.2009
Сообщений: 162
Бабло: $46620
|
кто-нибудь знает как аналогичное на перле написать?
|
|
|
05.05.2009, 20:39
|
#9
|
Техноманьяк
Регистрация: 12.02.2009
Сообщений: 118
Бабло: $6200
|
на антикапче же есть примеры
мне LWP лень вспоминать
|
|
|
05.05.2009, 21:09
|
#10
|
n/a
Регистрация: 18.02.2009
Сообщений: 162
Бабло: $46620
|
Цитата:
Сообщение от Bananz
на антикапче же есть примеры
мне LWP лень вспоминать
|
нету, даже на тикет накатал, все равно мимо
|
|
|
|