Распознавание капчи с помощью antigate

  • Автор темы Автор темы progrlab
  • Дата начала Дата начала

progrlab

Client
Регистрация
07.02.2014
Сообщения
204
Реакции
82
Баллы
28
Регистратор на mail.ru
Вместо ручной регистрации пробую использовать antigate.com
Распознавания не происходит.
Работаю в ProjectMaker.
Секретный ключ для antigate в настройках прописан.
В логах вот это :
2014-04-24 15:51:17.8698|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)
2014-04-24 15:51:17.9548|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)
2014-04-24 15:54:21.0551|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)
2014-04-24 15:54:21.0961|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)

Настройки в проекте в аттаче.
 

Вложения

  • ProjectMaker for ZennoPoster v5.1.2.0 by ZennoLab.com, licensed to akalyabingmail.com.jpg
    ProjectMaker for ZennoPoster v5.1.2.0 by ZennoLab.com, licensed to akalyabingmail.com.jpg
    132,8 KB · Просмотры: 1 345
Последнее редактирование:
А вкладка "Дополнительные"?
 
Вот эта вкладка :
 

Вложения

  • 2.jpg
    2.jpg
    79,8 KB · Просмотры: 1 146
Нужно подбирать условия для поиска каптчи. Скорее всего, что у вас вместо каптчи отмечается какая то сильно большая или сильно маленькая картинка и программа не может отправить её на распознание.
В вашем случае находит любую картинку, которая находится в 18 форме. Но на мэйле эти формы постоянно меняются.
Чтобы искать во всех, установите -1. ну и сам атрибут для поиска нужен другой.
 
Парни, а почему все эти моменты нельзя в документации к программе отразить ? Wiki-документация то весьма куцая.
Или все ньюансы за отдельную плату ?
> Скорее всего, что у вас вместо каптчи отмечается какая то сильно большая или сильно маленькая картинка и программа не может отправить её
> на распознание.
Как установить какой размер картинки оптимален ?
Варьировать масштабом ?
Сейчас у меня стоит 100%
> сам атрибут для поиска нужен другой.
Как узнать какой именно ?
 
Экшен распознавания капчи является стандартным экшеном постера по взаимодействию с HTML элементами
для поиска используется тег, атрибут, значение, и тип поиска + номер формы и документа (-1 для поиска по всем номерам и всем документам). Для этого вам требуются базовые знания HTML

Как узнать какой именно ?
На сайте нужно смотреть какие атрибуты у элемента есть
может id уникальный, может name, может class
 
Тут как бы для ньюансов есть цельный, и довольно активный, форум)))
а всего в вики не написать, иначе оно вообще станет не читаемым. Если к каждому действию прикладывать простынку о атрибутах и их возможных значениях - это будет кошмар
 
На вашем примере из первого поста:
у вас две группы для поиска элементов
первая группа ищет по ссылке на картинку, но значение ссылки уникально и равно тому, что было при записи.
очевидно что при последующем проходе ссылка на капчу уже будет отличаться.
Эта группа поиска будет неуспешной.
Значит экшен перейдет к следующей группе поиска.
В ней вы просто ищите первую картинку в форме 18.
Учитывая что формы могут быть разные, это абсолютно неточный способ для поиска.

Варианты лечения:
использовать -1 для номера формы и документов
1) для поиска можно использовать src картинки. но обрезать конец, в котором фигурирует номер капчи. Может стереть все после = там поможет.
2) можно найти другие атрибуты для поиска: может id уникальный, может name, может class
 
> Чтобы искать во всех, установите -1. ну и сам атрибут для поиска нужен другой.
Установил -1. Теперь другая ошибка :
В executionLog.txt :
2014-04-24 21:36:34.5741|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: e0537b21-65d1-47e3-8a0e-6e444cd76594 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-04-24 21:36:35.1382|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Вызываем событие click HTMLElement'a действия id: e0537b21-65d1-47e3-8a0e-6e444cd76594 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Результат: ok"
2014-04-24 21:36:37.7563|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-04-24 21:36:37.7663|WARN|ZennoLab.LogLibrary.InternalError|Ошибка в модуле "Выполнение действия HtmlElement id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Недопустимый параметр."
В nonCriticalErrors.txt :
2014-04-24 21:36:37.7563|ERROR|System.ArgumentException: Недопустимый параметр.
в System.Drawing.Bitmap..ctor(Int32 width, Int32 height, PixelFormat format)
в System.Drawing.Bitmap..ctor(Image original, Int32 width, Int32 height)
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawPartToBitmap(Int32 , Int32 , Int32 , Int32 , Boolean )
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawToBitmap(Boolean )
в CommandTransfer.MessagePerformer.r7mHvQxrx39gJ12r1Oi5(Object , Boolean )
в CommandTransfer.MessagePerformer.HeDrawToBitmap(Int32 heId, Boolean isImage)|
 
Атрибуты для поиска поменяли?
 
На вашем примере из первого поста:
у вас две группы для поиска элементов
первая группа ищет по ссылке на картинку, но значение ссылки уникально и равно тому, что было при записи.
очевидно что при последующем проходе ссылка на капчу уже будет отличаться.
Эта группа поиска будет неуспешной.
Значит экшен перейдет к следующей группе поиска.
В ней вы просто ищите первую картинку в форме 18.
Учитывая что формы могут быть разные, это абсолютно неточный способ для поиска.

Варианты лечения:
использовать -1 для номера формы и документов
1) для поиска можно использовать src картинки. но обрезать конец, в котором фигурирует номер капчи. Может стереть все после = там поможет.
2) можно найти другие атрибуты для поиска: может id уникальный, может name, может class
Хорошо. Попробую разные варианты.
 
Атрибуты для поиска поменяли?
Пробовал вот такие регулярки :
swa\.mail\.ru/c/2\?r=.*
swa\.mail\.ru/c/2\?r=[0-9]
Пока не помогло.

В логах :
executionLog.txt

2014-04-25 18:18:06.5587|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-04-25 18:18:06.5677|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Распознавание капчи"
Сообщение: "Капча отправлена на распознавание"
2014-04-25 18:18:07.5978|WARN|ZennoLab.LogLibrary.InternalError|Ошибка в модуле "AntiGate.com module"
Сообщение: "Не получен ответ на запрос http://AntiGate.com/in.php. Error: Удаленный сервер возвратил ошибку: (417) Expectation Failed."
2014-04-25 18:18:07.6288|WARN|ZennoLab.LogLibrary.InternalError|Ошибка в модуле "AntiGate.com module"
Сообщение: "Не получен ответ на запрос http://AntiGate.com/in.php. Error: Удаленный сервер возвратил ошибку: (417) Expectation Failed."
2014-04-25 18:18:07.6288|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Распознавание капчи действия id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Результат распознавания: sorry"
2014-04-25 18:18:12.1373|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: b6f07770-6b1b-4409-8c35-a19993ca72c7 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-04-25 18:18:12.1503|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Установка атрибута value HTMLElement'a действия id: b6f07770-6b1b-4409-8c35-a19993ca72c7 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Результат: "

В nonCriticalErrors.txt

2014-04-25 18:18:06.5677|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)
2014-04-25 18:18:07.5978|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)


Регулярки строил исходя из "Свойств элемента".
Свойства элемента в аттаче.
 

Вложения

  • 1.jpg
    1.jpg
    56,4 KB · Просмотры: 1 056
Последнее редактирование:
И еще в логе вот такое сообщение об ошибке встречается :
Сообщение: "Не получен ответ на запрос http://AntiGate.com/in.php. Error: Перед вызовом [Begin]GetResponse необходимо записать ContentLength байт в поток запроса."
 
Что то у вас ошибки какие то чудные)))) словно вы .net вручную правили)))
 
Нет нне правил. В чем прикол ?
 
доступ до антигейта есть? другие приложения на антикапчу отправляют?
ключ прописан в настройках?
Пришлите мне в личку файл Anti-Captcha.dll.config, посмотрю не побилось ли чего.
Капча вручную распознается? Если поставить MonkeyEnter.dll?
 
доступ до антигейта есть? другие приложения на антикапчу отправляют?
ключ прописан в настройках?
Пришлите мне в личку файл Anti-Captcha.dll.config, посмотрю не побилось ли чего.
Капча вручную распознается? Если поставить MonkeyEnter.dll?
1. Доступ к антигейту есть.
2. Ключ прописан.
3. MonkeyEnter.dll тут непонятно. Капчу ввести вручную почему то не просит.
4. Key Collector работает. Капчи распознаются.
5. Деньги на балансе есть.
Файлы проекта и конфиги в аттаче.
 
доступ до антигейта есть? другие приложения на антикапчу отправляют?
ключ прописан в настройках?
Пришлите мне в личку файл Anti-Captcha.dll.config, посмотрю не побилось ли чего.
Капча вручную распознается? Если поставить MonkeyEnter.dll?
1. Доступ к антигейту есть.
2. Ключ прописан.
3. MonkeyEnter.dll тут непонятно. Капчу ввести вручную почему то не просит.
4. Другие приложение типа - Key Collector работают. Капчи распознаются.
5. Деньги на балансе есть.
Файл конфига и проекта в аттаче.
 

Вложения

  • 11.zip
    11.zip
    138,4 KB · Просмотры: 410
Выбрать в экшене модуль MonkeyEnter и посмотреть что приходит на ручное распознавание
 
Выбрать в экшене модуль MonkeyEnter и посмотреть что приходит на ручное распознавание
Ну при выполнении по шагам. Он просто проходит ветку If как бы вроде распознал нормально.
В том проекте, что я выслал. Выходит сразу на запись в файл логина и пароля.
Забыл приложить лог . Вот он :
nonCriticalErrors.txt

2014-04-28 15:03:20.2220|ERROR|System.ArgumentException: Недопустимый параметр.
в System.Drawing.Bitmap..ctor(Int32 width, Int32 height, PixelFormat format)
в System.Drawing.Bitmap..ctor(Image original, Int32 width, Int32 height)
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawPartToBitmap(Int32 , Int32 , Int32 , Int32 , Boolean )
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawToBitmap(Boolean )
в CommandTransfer.MessagePerformer.r7mHvQxrx39gJ12r1Oi5(Object , Boolean )
в CommandTransfer.MessagePerformer.HeDrawToBitmap(Int32 heId, Boolean isImage)|
2014-04-28 15:57:28.3117|ERROR|System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.aYvm1pa7molLsULwZK0j(Object , Object )
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.GetHtmlElementFromTab(GeckoElement element, String tabName)|
2014-04-28 15:57:28.3157|ERROR|System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.CgS441a7xQc1uVSVIKfr(Object )
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.PcSdUAp8rDg(Object , EventArgs )|
2014-04-28 17:04:04.0283|ERROR|System.ArgumentException: Недопустимый параметр.
в System.Drawing.Bitmap..ctor(Int32 width, Int32 height, PixelFormat format)
в System.Drawing.Bitmap..ctor(Image original, Int32 width, Int32 height)
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawPartToBitmap(Int32 , Int32 , Int32 , Int32 , Boolean )
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawToBitmap(Boolean )
в CommandTransfer.MessagePerformer.r7mHvQxrx39gJ12r1Oi5(Object , Boolean )
в CommandTransfer.MessagePerformer.HeDrawToBitmap(Int32 heId, Boolean isImage)|
2014-04-28 17:12:45.0411|ERROR|System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.aYvm1pa7molLsULwZK0j(Object , Object )
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.GetHtmlElementFromTab(GeckoElement element, String tabName)|
2014-04-28 17:12:45.0451|ERROR|System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.CgS441a7xQc1uVSVIKfr(Object )
в ZennoLab.ProjectMaker.Controls.V5.ProjectPlayer.PcSdUAp8rDg(Object , EventArgs )|
2014-04-28 17:14:27.8930|ERROR|System.ArgumentException: Недопустимый параметр.
в System.Drawing.Bitmap..ctor(Int32 width, Int32 height, PixelFormat format)
в System.Drawing.Bitmap..ctor(Image original, Int32 width, Int32 height)
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawPartToBitmap(Int32 , Int32 , Int32 , Int32 , Boolean )
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawToBitmap(Boolean )
в CommandTransfer.MessagePerformer.r7mHvQxrx39gJ12r1Oi5(Object , Boolean )
в CommandTransfer.MessagePerformer.HeDrawToBitmap(Int32 heId, Boolean isImage)|
 
Я не понимаю вашего ответа.
При установке модуля MonkeyEnter для разгадывания капчи что приходит для разгадывания в отдельном окне?
 
Отдельное окно это, которое выскакивает как модальное и предлагает ввести капчу ?
Оно не появляется. Точнее раньше появлялось. Сейчас не появляется.
Перезапускал программу. Не появляется :(
 
Значит неправильно что-то делаете. С атрибутами намудрили может.
 
Хорошо . Может сделаем так :
Вы мне вышлите тестовый шаблон с капчей (на любой ресур), в котором нет мудростей с атрибутами. Ну т.е. тот, который точно рабочий.
И я попробую его выполнить.

PS
Я не отрицаю того момента, что я делаю что то не так.
 
У меня какой то ступорный момент случился с зеннопостером.
Хотелось бы его разрешить.
 
Кстати, шаблон то я вроде выслал.
 
Вот
 

Вложения

  • test.xmlz
    test.xmlz
    17,2 KB · Просмотры: 439
Проверил. AntiGate распознал капчу.
Но вот в логах такие записи

В executionLog.txt :

2014-05-10 15:42:50.6632|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: 7ff6ad06-c522-4be5-bd05-44caad22552c группы действий id: 8db7d1af-6e64-4e96-b198-01053f5ad990"
Сообщение: "Нашли элемент"
2014-05-10 15:42:50.6672|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Распознавание капчи"
Сообщение: "Капча отправлена на распознавание"
2014-05-10 15:43:21.9660|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Распознавание капчи действия id: 7ff6ad06-c522-4be5-bd05-44caad22552c группы действий id: 8db7d1af-6e64-4e96-b198-01053f5ad990"
Сообщение: "Результат распознавания: 4584d"

Т.е. как-бы все ок.

Но вот в nonCriticalErrors.txt есть сообщение об ошибке :
2014-05-10 15:42:50.6672|ERROR|Провалился парсинг дополнительных параметров: &ScaleFactor=10&MergeCaptchas=False&LastMergedCaptcha=False|System.IndexOutOfRangeException: Индекс находился вне границ массива.
в ZennoLab.AntiCaptcha.AntiCaptcha.GetIDFromBitmap(Bitmap bitmap)

Или это ругачка на вторую, математическую капу ?
 
А попробовал свой проект регилки на mail.ru
С распознаванием капчи опять проблемы. Причем теже, что и раньше.
1.
> При установке модуля MonkeyEnter для разгадывания капчи что приходит для разгадывания в отдельном окне?
В этом случае "отдельное окно" не появляется.
Но можно же ввести код капчи в окне браузера. Так ? Это будет корректно ?
Если ввести код капчи непосредственно в окне браузера, то регистрация проходит успешно.
Кстати, а почему это "отдельное окно" не всегда появляется ?
2. Если распознавать через AntiGate и выставлять в настройках номер не конкретной формы, а как вы советовали -1,
То пишет : Воспроизведение : Действие не выполнено.
В логах :
2014-05-10 16:56:39.9236|ERROR|System.ArgumentException: Недопустимый параметр.
в System.Drawing.Bitmap..ctor(Int32 width, Int32 height, PixelFormat format)
в System.Drawing.Bitmap..ctor(Image original, Int32 width, Int32 height)
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawPartToBitmap(Int32 , Int32 , Int32 , Int32 , Boolean )
в XUV0GMIx7Q3xqwouyFb.dKeH1sI4T9tN95Ojwfn.DrawToBitmap(Boolean )
в CommandTransfer.MessagePerformer.r7mHvQxrx39gJ12r1Oi5(Object , Boolean )
в CommandTransfer.MessagePerformer.HeDrawToBitmap(Int32 heId, Boolean isImage)|


2014-05-10 16:56:37.9735|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: e0537b21-65d1-47e3-8a0e-6e444cd76594 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-05-10 16:56:38.5625|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Вызываем событие click HTMLElement'a действия id: e0537b21-65d1-47e3-8a0e-6e444cd76594 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Результат: ok"
2014-05-10 16:56:39.9056|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-05-10 16:56:39.9236|WARN|ZennoLab.LogLibrary.InternalError|Ошибка в модуле "Выполнение действия HtmlElement id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Недопустимый параметр."
2014-05-10 16:58:09.5587|INFO|ZennoLab.LogLibrary.InternalError|Событие в модуле "Действие id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Нашли элемент"
2014-05-10 16:58:09.5637|WARN|ZennoLab.LogLibrary.InternalError|Ошибка в модуле "Выполнение действия HtmlElement id: cc77605e-d2fa-4c12-9709-dc30f3c90734 группы действий id: 1bd7c3d4-a33c-4392-9a6e-96606349dc01"
Сообщение: "Недопустимый параметр."
 
Последнее редактирование:
Попробовал другой способ.
Который заключался в том, что я просто переделал заново часть проекта.
Ну, т.е. удалил все экшены, которые начинались с распознования капчи и далее.
Заработало. И ручное распознавание и через антигейт.
Но срабатывает только в том случае - если в настройках распознавания формы номер формы указан фиксированно.
Если указывать -1,
То пишет : Воспроизведение : Действие не выполнено.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)