|
Распознавание капчи (AntiGate.com) |
|
|
DarkMaster |
6.11.2014, 17:40
|
Модератор UOPilot
Сообщений: 9.596
Регистрация: 2.12.2008 Группа: Супермодераторы Наличность: 28801
Пользователь №: 11.279
|
Создана дллка для работы с рапознованнием капчи.
AntiGate_plugin.zip ( 126,81 килобайт )
Кол-во скачиваний: 2564Инструкция
Код AntiGate.dll - это плагин, который позволяет взаимодействовать UOPilot с сервисом AntiGate.com. Данный сервис предназначен для распознавания текста с картинок(капчи), которые обычно необходимо вводить при регистрации. Плагин необходимо поместить в папку Plugins рядом с uopilot.exe. Для работы требуются установленные библиотеки c++: http://www.microsoft.com/ru-ru/download/details.aspx?id=40784 В плагине содержится 3 функции: set $var AntiGate.SetKey (ваш_ключ) set %sendImg AntiGate.SendImage ( *путь* доп_параметр=значение доп_параметр=значение ...) set %getResult AntiGate.GetResult (id_изображения)
set $key AntiGate.SetKey (ваш_ключ) Задание ключа для работы с сервисом. $key - переменная, в которую помещается результат работы(текущий ключ). ваш_ключ - ваш ключ от сервиса AntiGate Пример: set $key AntiGate.SetKey (12345678901234567890123456789012) log $key
set %sendImg AntiGate.SendImage ( *путь* доп_параметр=значение доп_параметр=значение) Отправка изображения на сервис. %sendImg - массив в который помещается результат работы. %sendImg [1] - флаг результата работы: OK - загрузка прошла успешно. ERROR - произошла ошибка. %sendImg [2] - id_изображения, если оно успешно загружено, либо текст ошибки. *путь* - адрес картинки на вашем компьютере. Не ссылка на нее в интернете, а именно файл на вашем жестком диске. Адрес обособляется '*'. доп_параметр - дополнительный параметр, поддерживаемый сервисом AntiGate. 'значение'- значение дополнительного параметра. Пример: set %sendImg AntiGate.SendImage (*d:\captcha.jpg* regsense=1 phrase=1) log %sendImg [1] log %sendImg [2] Список дополнительный параметров доступных на сервисе: phrase 0|1 0 = дефолтное значение (одно слово) 1 = капча имеет два слова regsense 0|1 0 = дефолтное значение (регистр не имеет значения) 1 = капча чувствительна к регистру numeric 0|1 0 = дефолтное значение 1 = капча состоит только из цифр 2 = Капча не имеет цифр calc 0|1 0 = дефолтное значение 1 = математическое действие из цифр на капче min_len 0 .. 20 0 = дефолтное значение >0 = минимальная длина текста на капче, которую работник должен ввести max_len 0 .. 20 0 = дефолтное значение (не ограничено) >0 = максимальная длина текста на капче, которую работник должен ввести is_russian 0|1 0 = дефолтное значение 1 = показать капчу работнику со знанием русского языка
set %getResult AntiGate.GetResult (id_изображения) Возвращает результат распознавания. id_изображения - id полученный при отправке изображения с помощью AntiGate.SendImage(). Функция возвращает: %getResult [1] - флаг результата работы: ОК - капча успешно распознана. NOT_READY - результат еще не готов, попробуйте чуть позже. ERROR - произошла ошибка. %getResult [2] - текст капчи, если она была распознана, либо текст ошибки. Пример: set %getResult AntiGate.SendImage (%sendImg [2]) log %getResult [1] log %getResult [2] Пример готового скрипта:
set linedelay 0 log mode compact
:start // Воодим ключ от сервиса. // Требуется выполнить всего 1 раз. set $key AntiGate.SetKey (12345678901234567890123456789012) log Текущий ключ: $key
// Обнуляем прошлый результат. set %sendImg [1] "" // Загрузка изображения может быть не удачной, // например, из-за остустствия слотов. // Повторяем попытки загрузить изображение // пока не будет дан положительный ответ от сервера. while %sendImg [1] <> "OK" set %sendImg AntiGate.SendImage (*d:\captcha.jpg* regsense=1 phrase=1) log Статус отправки изображения: %sendImg [1] log Содержимое ответа на отправку изображения: %sendImg [2] end_while
// Обнуляем прошлый результат. set %getResult [1] "" // Запрашиваем результат распознования. while %getResult [1] <> "OK" wait 5s set %getResult AntiGate.GetResult (%sendImg [2]) log Статус получения результата: %getResult [1] log Содержимое ответа на запрос результата: %getResult [2] end_while stop_script
Так же вам может пригодиться сохранение части экрана для последующей отправки на сервис: 'PrintScreen <handle> <x> <y> <width> <height> <path>' Первым параметром указывается хэндл рабочего окна, либо 0 - весь экран. Если 'width' или 'height' =0 то берется максимально возможное значение. printscreen workwindow 100 150 80 40 d:\captcha.jpg
Для работы требует установленные библиотеки c++. На всякий случай прицепляю к сообщению.
vcredist_x86.zip ( 6,2 мегабайт )
Кол-во скачиваний: 2451
vcredist_x64.zip ( 6,86 мегабайт )
Кол-во скачиваний: 2215Сообщение отредактировал DarkMaster - 6.11.2014, 17:46
--------------------
Скрипты UOPilot под заказ. Консультации по UOpilot 15$/час. Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd: Kov____ Писать в личку.
|
|
|
|
|
|
Сообщений в этой теме
DarkMaster Распознавание капчи (AntiGate.com) 6.11.2014, 17:40 Zeleax Круто. Спасибо! 8.11.2014, 9:48 DarkMaster рад стараться) 8.11.2014, 14:18 Korsar2888 Да прикольно, спасибо большое) 22.11.2014, 1:23 portos подскажите , как из скрипта AntiGate ....вывести р... 8.12.2014, 0:34 DarkMaster
Поясните, что вы имели ввиду? Как ввести полученн... 8.12.2014, 7:32 portos
Поясните, что вы имели ввиду? Как ввести полученн... 8.12.2014, 13:46 DarkMaster Скорее всего вы задаете флаг нескольких слов в кап... 8.12.2014, 14:47 portos
Скорее всего вы задаете флаг нескольких слов в ка... 8.12.2014, 15:00 DarkMaster Почитайте в 1 посте про параметры. Многое прояснит... 8.12.2014, 20:20 Sashka.
set linedelay 0
log mode compact
:start
//... 13.12.2014, 0:18 DarkMaster Курсор точно ставится? Попробуйте kleft.
Так же по... 13.12.2014, 8:19 Sashka.
Курсор точно ставится? Попробуйте kleft.
Так же п... 13.12.2014, 13:25 DarkMaster kleft это немного иной тип эмуляции. В частности о... 13.12.2014, 13:46 Sashka.
Скорее всего поле ввода просто имеет другой хендл... 13.12.2014, 14:35 Sashka.
[code]
move 1449, 275 abs //прям над окошком с к... 14.12.2014, 16:49 DarkMaster
Попробуй координаты поменять.
Так же можно попроб... 13.12.2014, 17:06 Sashka.
Попробуй координаты поменять.
Так же можно попроб... 13.12.2014, 17:39 DarkMaster
Не думаю. Я очень долго мучался с этой хренью. По... 14.12.2014, 18:09 Sashka.
Не думаю. Я очень долго мучался с этой хренью. По... 14.12.2014, 18:55 Sashka. кароч вот как получилось
set linedelay 0
log mod... 14.12.2014, 19:55 DarkMaster
теперь окна флэша не стало. добро пожаловать в хр... 14.12.2014, 21:41 Sashka.
Почему хендл указан цифрой? О.о.
ну так то это #... 15.12.2014, 1:20 DarkMaster
Долго отправляется именно или отвечает? Со скорос... 15.12.2014, 11:54 Sashka.
Долго отправляется именно или отвечает? Со скорос... 15.12.2014, 13:50 DarkMaster
Ну дык это от сервиса зависит. Индусам нужно врем... 15.12.2014, 16:01 yuroc подскажите можно как-то использовать этот способ д... 23.12.2014, 23:27 DarkMaster как минимум не этим плагином. 24.12.2014, 4:09 Forxy Текущий ключ: key:XXXXXXXXXXXXXXXXXXXXXX
С... 6.9.2016, 17:06 DarkMaster Это кнайт баги пофиксил в передаче из плагина в пи... 6.9.2016, 18:35 DarkMaster Пробуйте. Отпишитесь, пожалуйста об успехах, чтобы... 6.9.2016, 19:12 Forxy
Пробуйте. Отпишитесь, пожалуйста об успехах, чтоб... 7.9.2016, 14:11 Makson Доброго вечера. Подскажите плз, почему у меня вмес... 24.9.2016, 18:57 DarkMaster Проблемы с кириллицей и локалью. Попробуйте в пило... 24.9.2016, 20:09 Чекист
Проблемы с кириллицей и локалью. Попробуйте в пил... 13.9.2017, 17:20 dunkel Доброго времени суток
Подскажите решение проблемы ... 20.1.2017, 4:51 DarkMaster
По сути его с нуля писать надо будет. Другой серв... 14.9.2017, 1:29 MAXXIMUM Как я понял сервис то другой, но запросы те же ост... 20.2.2018, 1:06 cirus
С чего сделано такое утверждение? 20.2.2018, 1:42 MAXXIMUM хм... Дома в логах пишет, что загрузка провалена d... 20.2.2018, 11:30 cirus Я не знаю по какой причине плагин может не загрузи... 20.2.2018, 11:34 MAXXIMUM Проверено! Все работает!
Вам нужно измени... 20.2.2018, 11:52 MAXXIMUM Возник вопрос реализации далее (не совсем я разбир... 20.2.2018, 13:15 cirus
Клавиатура находится всегда в одних и тех же коор... 20.2.2018, 13:43 MAXXIMUM Кнопки надо будет искать, но с поиском картинок у ... 20.2.2018, 13:48 cirus
set %getResult [2] 3412 // что надо набр... 20.2.2018, 14:05 MAXXIMUM А вот запуск плагина дома:
Пилот последняя верс... 20.2.2018, 14:39 MAXXIMUM Ситуация оказалась странная. Дома раз 5 полностью ... 20.2.2018, 21:34 webadmin Windows 2008 Server х64 (вынужден запустить именно... 9.3.2018, 20:23 webadmin было бы здоров конечно, но я даже смутно не предст... 12.3.2018, 17:34 aksiere
Создана дллка для работы с рапознованнием капчи.
... 24.8.2020, 23:26 RightSeNN
Пробуйте. Отпишитесь, пожалуйста об успехах, чтоб... 16.5.2022, 9:39
7 чел. читают эту тему (гостей: 7, скрытых пользователей: 0)
Пользователей: 0
|
|