BAS преобразует все каптчи перед отправкой в jpg c сильной потерей качества



  • Всем привет
    Алгоритм действий который я использую для сохранение картинок в папку и отправки их в CapMonster такой

    1. Сделать скриншот селектора каптчи
    2. Сохранение этого скриншота в папку, после сохранение этого скриншота имеем примерно такую картинку
      15.png
    3. Отправка скрина в BASE64 в CapMonster
    4. Получение ответа

    В самой программе CapMonster я включил опцию сохранять присланные каптчи в папку и вот что CapMonster сохранил правда там формат jpg
    7.jpg
    Я сейчас покажу увеличенные эти 2 скрина
    Первый будет тот что я сохранять как скрин в папку
    Второй тот что сохраняет CapMonster
    Screenshot_5.jpg
    Как теперь хорошо видно
    То сохраняет CapMonster в папке Captchas далеко от идеала

    Но кроме того я подозреваю что он и распознавание производит с этой очень плохой и замыленной картинки, скрин из CapMonster
    Screenshot_6.jpg
    так как мой модуль который я сам создал для работы с этими капчтами через CapMonster MCS RU 2.11.2.0 показывает эффективность 98-99%

    Я брал сохранные мной картинки в папку и в качестве теста запускал проверку на распознавание из программы для создания своих модулей
    скрин из CapMonster MCS
    Screenshot_7.jpg

    Может кто знает как решить данную проблему?



  • показывает эффективность 98-99%...
    Может кто знает как решить данную проблему?

    ну как бы... количество верных результатов будет выше, чем у среднестатистического человека. Кек))
    Вы не спалитесь высокой долей ошибок.



  • @IvanM said in CapMonster искажает сохраненные картинки в папке Captchas:

    показывает эффективность 98-99%...
    Может кто знает как решить данную проблему?

    ну как бы... количество верных результатов будет выше, чем у среднестатистического человека. Кек))
    Вы не спалитесь высокой долей ошибок.

    Насколько я понял такой результат при тестировании, а при работе он значительно ниже.

    @gomeapat said in CapMonster искажает сохраненные картинки в папке Captchas:

    Сделать скриншот селектора каптчи
    Сохранение этого скриншота в папку, после сохранение этого скриншота имеем примерно такую картинку

    Отправка скрина в BASE64 в CapMonster
    Получение ответа

    Вы сохраняете картинку и потом отправляете ее в CM? То есть делаете это не через действие "Решить каптчу?"



  • @GameBot said in CapMonster искажает сохраненные картинки в папке Captchas:

    Вы сохраняете картинку и потом отправляете ее в CM? То есть делаете это не через действие "Решить каптчу?"

    Я делаю скрин и полученный результат base64 просто сохраняю в файл
    а потом тот же base64 сразу отправляю и в CapMonster

    Сохраняю в файл я исключительно для того что б потом можно было посмотреть как эта картинка выглядела до того как была отправлена на решение в CapMonster



  • @IvanM said in CapMonster искажает сохраненные картинки в папке Captchas:

    ну как бы... количество верных результатов будет выше, чем у среднестатистического человека. Кек))
    Вы не спалитесь высокой долей ошибок.

    Там каптча очень простая реально примерно такая как я показал на картинке там что б человек в ней ошибся, возможно только если он просто введен не правильный результат случайно



  • Сегодня после целого дня общения с тех поддержкой CapMonster стало ясно что проблема с искажением картинки возникает где то на этапе передачи от ВAS в CapMonster.
    Так как у них мой модуль что создал для CapMonster отлично работает, а главное что картинки из папки Captchas куда CapMonster сохраняет присланные изображения для распознавания, нормального качества, а не как у меня замыленные.

    У кого нить есть какие нить идеи что может давать такую замыленность при передаче данных от BAS в CapMonster ?

    Я уже пробовал отправлять как скрин так и инфу из кеша все равно в CapMonster сохраняется замыленная картинка.

    solver_properties_clear("capmonster")
    solver_property("capmonster","serverurl","http://192.168.0.103:8008/")
    solver_property("capmonster","CapMonsterModule","module_name")
    capmonster("rtE2M22Y5EC72Ra6zier")
    /*
    solve_base64("capmonster", [[SCREENSHOT_BASE64]])!
    [[CAPTCHA_RESULT]] = _result()
    */
    cache_get_base64("http://site.com/viewads/captcha")!
    solve_base64("capmonster", _result())!
    [[CAPTCHA_RESULT]] = _result()
    


  • @gomeapat Точно знаю, что БАС отсылает на распознавание капчу через jpeg-файл. Возможно, причина кроется как раз в этом. К примеру, поставлено слишком большое значение сжатия, и поэтому на изображении появляются артефакты. Можете чисто ради теста попытаться отправить капчу запросом в виде сырой base64. Если после этого искажения исчезнут, то причина описана мною выше, и от вас она не зависит. Если искажения останутся, то надо будет думать дальше



  • @DoctorKrolic said in CapMonster искажает сохраненные картинки в папке Captchas:

    К примеру, поставлено слишком большое значение сжатия,

    Где это значение проставляется



  • Да я смотрю что у меня вообще любые каптчи отправленные из BAS в CapMonster замыленные
    Вот пример отправки каптчи с сайта http://www.captcha.ru/kcaptcha/
    kcaptcha.xml
    Если у кого есть CapMonster запустите и потом сюда выложите примеры картинок из папки Captchas, которые у Вас получились.
    У меня они такие вот
    Screenshot_8.jpg
    видно что четкости ни какой



  • @gomeapat Я же написал, что этот параметр от вас не зависит, да и вообще это лишь предположение, его проверять надо. Я в том сообщении описал, что можно попробовать



  • В общем проблему таки удалось решить
    Данная тема была переименована
    Дело было в том что BAS перед отправкой изображения каптчи по умолчанию приводит ее в формат jpg и это видимо сильно снижает первоначальное качество картинки
    что бы этого не происходило нужно писать так было добавить следующую строку
    solver_property("capmonster","bas_disable_image_convert","1")

    solver_properties_clear("capmonster")
    solver_property("capmonster","bas_disable_image_convert","1")
    solver_property("capmonster","serverurl",{{captchaServerUrl}}.slice(-1) == "/" ? {{captchaServerUrl}} : {{captchaServerUrl}} + "/")
    solver_property("capmonster","CapMonsterModule",{{capmonsterModule}})
    capmonster({{protectionKey}})
    
    solve_base64("capmonster", [[CAPTCHA_BASE64]])!
    [[CAPTCHA_RESULT]] = _result()
    


  • @gomeapat Воу, спасибо за информацию, добавлю эту строчку в свои проекты)



  • В общем проблему таки удалось решить

    Класс! Спасибо, что заморочились с решением этой проблемы! Очень ценно



  • @gomeapat
    Хочу уточнить... А где найти этот кусок скрипта, куда нужно поместить
    solver_property("capmonster","bas_disable_image_convert","1") ?

    PS: @gomeapat и как модуль теперь работает? Удается разгадывать 98-99% каптч?



  • @IvanM Выше пример кода. Актуально только тогда, когда вы капчу не через кубик решаете, а вот таким полукастомным решением



  • Я пробывал отсылать и через кубик он там все равно шлет ее в формате jpg и плохого качества.
    я пробывал брать картинку как из кеша так и делать скрин, он все равно шлет ее в формате jpg и плохого качества.
    Нормального качества удалось добиться только при таком вот кастомном методе отсылке.

    Я пробывал ставить и BAS и CapMonster на другой ноут и там тоже самое
    Я так понял что код который отправляет каптчу image.jpg
    находится в файле Engine.dll
    Не знаю может быть я и ошибся но ни где в программе упоминания об image.jpg я не нашел, кроме этого файла
    Как править файлы dll я беспонятния.



  • @gomeapat Вряд ли удастся изменить что-то в уже скомпилированной dll-ке. Если у вас есть премиум, у вас есть возможность получить исходный код, там и надо править. Но решение весьма сомнительное, так как вам придётся пересобирать каждую последующую версию БАС с вашими кастомными правками



  • @DoctorKrolic можно поднять вопрос в ветке новостей для обозрения разрабом.
    может в каком-нибудь будущем патче исправят



  • ну капееец... и что, никак не исправить теперь? Сидеть ждать патча?

    И как тогда кастомную отсылку запилить в обход БАС?



  • @IvanM Ну так добавьте строчку solver_property("capmonster","bas_disable_image_convert","1") и будет вам счастье. "На пока что" сойдёт


Log in to reply