Решение математической капчи

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

alfaon

Client
Регистрация
28.10.2016
Сообщения
13
Реакции
2
Баллы
3
Всем привет, помогите пжл, не могу никак нормально выцепить картинку с капчей, постоянно получаю:
Выполнение действия распознавания капчи Некорректная капча
Для вот этого сервиса: https://sinoni.men/
Пробовал ее определить стандартным способом (пр. кнопка на картинке - это капча!)
 
@alfaon Как получить каптчу?
Зарегистрировался, никакой каптчи не было.
 
там есть ссылка в элементе, можно тупо получать картинку по спарсенной ссылке

76327


а можно открыть ссылку в отдельном окне и получить все элементы по отдельности, а так же можно удалить эту линию над буквами

76328


76329


единственное я заметил что там элементы в svg могут меняться местами. ну это надо чекать их расположение на странице через полученные элементы .

или же после удаления линии, сразу скринить и отсылать куда надо.
 
  • Спасибо
Реакции: alfaon
там есть ссылка в элементе, можно тупо получать картинку по спарсенной ссылке

Посмотреть вложение 76327

а можно открыть ссылку в отдельном окне и получить все элементы по отдельности, а так же можно удалить эту линию над буквами

Посмотреть вложение 76328

Посмотреть вложение 76329

единственное я заметил что там элементы в svg могут меняться местами. ну это надо чекать их расположение на странице через полученные элементы .

или же после удаления линии, сразу скринить и отсылать куда надо.

Если ссылку открыть в новой вкладке, то капча перезагружается

И у меня почему-то не получается ее сохранить как изображение, получаю такие ошибки, сохраняю по ссылке стандартной функцией
e030d04ffe.jpg


Сорри, за возможно тупые вопросы.
 
Не нужна регистрация, попробуйте разлогиниться и вставить текст, она появится во здесь:
Попробуйте так создать действие, не на img, а на вышестоящем span.

76332
 
  • Спасибо
Реакции: alfaon
держи. модуль для отправки только пропиши какой надо.
C#:
Развернуть Свернуть Копировать
//-------- входные параметры поиска капчи ---------------------------------------------------//
string xpath_1 = @"//span[@class='svg-captcha']/img[@class='svg-captcha-img']";
string modul_cap = @"MonkeyEnter.dll"; // CapMonster2.dll
//------------------------------------------------------------------------------------------------//
HtmlElement he = instance.ActiveTab.FindElementByXPath(xpath_1, 0);
if (he.IsVoid) throw new Exception();
//// захват изображения ///////////////////////////////////////////////////////////////////
int left = Convert.ToInt32(he.GetAttribute("leftInBrowser")); //Получаем координату элемента по left
int top = Convert.ToInt32(he.GetAttribute("topInBrowser")); //Получаем координату элемента по top
long unixTime = (long)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalMilliseconds; //Получаем UnixTime в миллисекундах
string captchapath = project.Directory + @"\Temp\" + unixTime + ".jpg"; // путь к картинке
ZennoPoster.ImageProcessingCropFromScreenshot(instance.Port, captchapath, left, top, he.Width, he.Height, "pixel");  //Делаем скриншот по координатам элемента и сохраняем
System.Threading.Thread.Sleep(1000); //Небольшая пауза, чтобы система успела сохранить файл
string b64strcaptcha = Convert.ToBase64String(System.IO.File.ReadAllBytes(captchapath));
System.IO.File.Delete(captchapath);
// Отправить на распознавание
string recognition = ZennoPoster.CaptchaRecognition(modul_cap,b64strcaptcha, "");
// обработка ответа
var regexGroups = Macros.TextProcessing.Regex(recognition, @".*(?=-\|-)", "0");
if (regexGroups.Count != 0) recognition = regexGroups[0].FirstOrDefault();
// возвращаем результат   
return recognition;
 
  • Спасибо
Реакции: Sergodjan и alfaon
держи. модуль для отправки только пропиши какой надо.
C#:
Развернуть Свернуть Копировать
//-------- входные параметры поиска капчи ---------------------------------------------------//
string xpath_1 = @"//span[@class='svg-captcha']/img[@class='svg-captcha-img']";
string modul_cap = @"MonkeyEnter.dll"; // CapMonster2.dll
//------------------------------------------------------------------------------------------------//
HtmlElement he = instance.ActiveTab.FindElementByXPath(xpath_1, 0);
if (he.IsVoid) throw new Exception();
//// захват изображения ///////////////////////////////////////////////////////////////////
int left = Convert.ToInt32(he.GetAttribute("leftInBrowser")); //Получаем координату элемента по left
int top = Convert.ToInt32(he.GetAttribute("topInBrowser")); //Получаем координату элемента по top
long unixTime = (long)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalMilliseconds; //Получаем UnixTime в миллисекундах
string captchapath = project.Directory + @"\Temp\" + unixTime + ".jpg"; // путь к картинке
ZennoPoster.ImageProcessingCropFromScreenshot(instance.Port, captchapath, left, top, he.Width, he.Height, "pixel");  //Делаем скриншот по координатам элемента и сохраняем
System.Threading.Thread.Sleep(1000); //Небольшая пауза, чтобы система успела сохранить файл
string b64strcaptcha = Convert.ToBase64String(System.IO.File.ReadAllBytes(captchapath));
System.IO.File.Delete(captchapath);
// Отправить на распознавание
string recognition = ZennoPoster.CaptchaRecognition(modul_cap,b64strcaptcha, "");
// обработка ответа
var regexGroups = Macros.TextProcessing.Regex(recognition, @".*(?=-\|-)", "0");
if (regexGroups.Count != 0) recognition = regexGroups[0].FirstOrDefault();
// возвращаем результат  
return recognition;

Спасибо, все работает!
Буду теперь знать, как это делается
 
  • Спасибо
Реакции: Sergodjan
  • Спасибо
Реакции: kxk

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