Очередной пример на Perl (используется специально написанный модуль):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
use warnings; use AntiCaptcha; #Отключаем буферизацию вывода $| = 1; #Создаем объект #antigate.com - адрес сервера антикапчи #123 - ключ my $ac = AntiCaptcha->new('antigate.com', '123'); #Все последующие методы возвращают число отличное от 0 в случае успеха #Отправляем изображение на распознавание #Второй параметр задает тип передаваемых данных: #0 - путь к файлу, 1 - бинарные данные my $id = $ac->recognize('image.jpg', 0) or die 'error'; #Объявляем переменную для хранения результата my $answ; #Опрашиваем сервер антикапчи until($answ = $ac->get_status($id)) { sleep 3; } #Выводим результат распознавания print $answ; |
Параметры:
phrase => 0 или 1 (0 по умолчанию, 1 помечает, что у капчи 2-4 слова)
regsense => 0 или 1 (0 по умолчанию, 1 помечает, что текст капчи чувствителен к регистру)
numeric => 0 или 1 или 2 (0 по умолчанию, 1 помечает, что текст капчи состоит только из цифр, 2 помечает, что на капче нет цифр)
min_len => 0..20 (0 по умолчанию, помечает минимальную длину текста капчи)
max_len => 0..20 (0 - без ограничений, помечает максимальную длину капчи)
is_russian => 0..2
is_fatal => 0 или 1 (0 по умолчанию, прекращать ли работу при фатальных ошибках со стороны антигейта)
verbose => 0 или 1 (1 по умолчанию, отвечает за вывод информации о возможных ошибках и статусе распознавания)
Задаются следующим образом:
1 2 3 |
$ac->{phrase} = 0; $ac->{regsense} = 1; ... |
Скачать модуль и исходники можно тут: ZIP
странно но на АС уходит пустая картинка
никак не могу понять где косяк
Модуль откуда скачан с антикапчи или с сайта?
Спасибо за скрипт. Сэкономили мне немного времени (если оно конечно работает). Только зачем было использовать сокеты, чем юзерагент плох?
Потому что использование юзерагента здесь нецелесообразно по-моему, да и сокеты полегче будут
Can't connect to anti-captcha
Thread 1 terminated abnormally: Can't use an undefined value as a symbol referen
ce at F:/Perl/lib/AntiCaptcha.pm line 95.
вот такая ошибка ... Как быть ?
Задуматься над причиной отсутствия соединения с сайтом антикапчи
Can’t connect to anti-captcha
Thread 1 terminated abnormally: Can’t use an undefined value as a symbol referen
ce at F:/Perl/lib/AntiCaptcha.pm line 95.
Дело в том , что ошибка случается лишь иногда ... и когда это случается скрипт прерывает свою работу ... а хотелось бы что бы он заново пробовал соединиться с антикапчей ...
Попробуй измени в районе 95 строки
my $sock = sock($self->{'host'});
на
my $sock = sock($self->{'host'}) || return 0;
Или перепиши модуль целиком под себя
На cpan няшнее модуль http://search.cpan.org/perldoc?WebService::Antigate
помогите плиз.зарег-ся пополнил баланс а как применить сайт в онлайн игре не пойму.подскажите кто может