Сниппет для решения Recaptcha 2 через rucaptcha.com (post/get)

Регистрация
12.07.2014
Сообщения
916
Благодарностей
373
Баллы
63

lexone

Client
Регистрация
12.10.2012
Сообщения
420
Благодарностей
726
Баллы
93
Это понятно.. Код что сам все делает? Кликает куда надо и отправляет\принимает данные? ))
код открывает рекапчу, выбирает определенное задание (я ставлю только знаки), отправляет на км, по ответу км кликает на определенные области рекапчи и решает ее.
 
  • Спасибо
Реакции: Сибиряк
Регистрация
12.07.2014
Сообщения
916
Благодарностей
373
Баллы
63
Всем спасибо разобрался)
Клик по капче и клик по кнопке Субмит это отдельные шаги..
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
Кликать ничего не нужно....сниппет ищет ключ капчи со страницы и отправляет на рукапчу
 

lexone

Client
Регистрация
12.10.2012
Сообщения
420
Благодарностей
726
Баллы
93
Кликать ничего не нужно....сниппет ищет ключ капчи со страницы и отправляет на рукапчу
перепутал с другим сниппетом автора) Тот отправляет именно картинки на КМ и решает через него.
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
373
Баллы
63
Кликать ничего не нужно....сниппет ищет ключ капчи со страницы и отправляет на рукапчу
Именно клик по квадрату, потом кубик отгадывания капчи, потом клик на кнопке Сабмит.
Иначе не робит.
http://prntscr.com/glwdek

Единственно вылетает проект в ошибку на этапе разгадывания.
Выполнение действия CSharp OwnCode не удалось решить рекапчу, ответ от сервиса: CAPCHA_NOT_READY
http://prntscr.com/glwc0d
Код:
Код:
Type type_rucaptcha = AppDomain.CurrentDomain.GetAssemblies().First(x => x.FullName.IndexOf("Rucaptcha", StringComparison.OrdinalIgnoreCase) != -1).GetType("ZennoLab.RuCaptcha.RuCaptchaConfigurator");
string rucaptcha_key = type_rucaptcha.GetMethod("get_SecretKey").Invoke(Activator.CreateInstance(type_rucaptcha), null).ToString();
string site_key = Regex.Match(instance.ActiveTab.DomText, @"(?<=api2/anchor\?k=).*?(?=&amp)").Value;
if (site_key == string.Empty)
    throw new Exception("google key не найден, задайте его вручную");
string domen = new Uri(instance.ActiveTab.URL).GetLeftPart(UriPartial.Authority);
System.Net.HttpWebRequest post_rucaptcha = (System.Net.HttpWebRequest)System.Net.WebRequest.Create("http://rucaptcha.com/in.php?key=" + rucaptcha_key + @"&method=userrecaptcha&googlekey=" + site_key + @"&pageurl=" + domen);
post_rucaptcha.Proxy = null;
post_rucaptcha.AllowAutoRedirect = false;
post_rucaptcha.Method = "GET";
post_rucaptcha.ServicePoint.Expect100Continue = false;
post_rucaptcha.Timeout = 30000;
string url_get;
using (System.Net.WebResponse resp = post_rucaptcha.GetResponse())
using (Stream respStream = resp.GetResponseStream())
using (StreamReader sr = new StreamReader(respStream))
{
    string resp_answer = sr.ReadToEnd();
    if (!resp_answer.Contains("OK|"))
        throw new Exception(resp_answer);
    url_get = "http://rucaptcha.com/res.php?key=" + rucaptcha_key + @"&action=get&id=" + resp_answer.Split('|')[1];
}
Thread.Sleep(10000);
for (int z = 0; ;z++)
{
    System.Net.HttpWebRequest get_rucaptcha_2 = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url_get);
    get_rucaptcha_2.Method = "GET";
    get_rucaptcha_2.Timeout = 30000;
    get_rucaptcha_2.Proxy = null;
    get_rucaptcha_2.AllowAutoRedirect = false;
    post_rucaptcha.ServicePoint.Expect100Continue = false;
    string response;
    using (System.Net.WebResponse resp = get_rucaptcha_2.GetResponse())
    using (Stream respStream = resp.GetResponseStream())
    using (StreamReader sr = new StreamReader(respStream))
       response = sr.ReadToEnd();
    if (response.Contains("OK|"))
    {
        instance.ActiveTab.FindElementById("g-recaptcha-response").SetValue(response.Split('|')[1], "None", false);
        break;
    }
    else if ((response != "CAPCHA_NOT_READY" && response != string.Empty) || z > 20)
        throw new Exception("не удалось решить рекапчу, ответ от сервиса: " + response);
    else
        Thread.Sleep(10000);
}
 

amyboose

Client
Регистрация
21.04.2016
Сообщения
2 311
Благодарностей
1 191
Баллы
113
CAPCHA_NOT_READY означает, что работник не успел разгадать за заданное время
 

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 980
Благодарностей
4 433
Баллы
113
Спасибо, но у кого-нибудь хоть один код решает рекапчу?
Первый код выдает такую же ошибку как и у всех.
Второй (от ezotonal) долго без ошибок обрабатывается, деньги с баланса списываются, и капча не разгадывается.
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
373
Баллы
63

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 980
Благодарностей
4 433
Баллы
113
У меня вроде разгадывает.
Гугл парсил
Ребята, давайте разберемся. На двух сайтах пробую и не работает.
Может я не так процесс использования этого сниппета представляю?
Вот рекапча https://yadi.sk/i/puOJUdBw3MzqyC
На кнопку "Я не робот" нужно нажимать?
Хотя нажимаю и не нажимаю, запускаю кубик со сниппетом, 1-2 минуты он работает, деньги с сервиса снимаются, потом в логах ПМ пишет "ок" и всё, ничего не происходит.
Ключ для рукапчи ввёл, ну и изменения баланса указывает что всё нормально с этим.
Может что-то ещё в коде нужно прописать или изменить?
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
Ребята, давайте разберемся. На двух сайтах пробую и не работает.
Может я не так процесс использования этого сниппета представляю?
Вот рекапча https://yadi.sk/i/puOJUdBw3MzqyC
На кнопку "Я не робот" нужно нажимать?
Хотя нажимаю и не нажимаю, запускаю кубик со сниппетом, 1-2 минуты он работает, деньги с сервиса снимаются, потом в логах ПМ пишет "ок" и всё, ничего не происходит.
Ключ для рукапчи ввёл, ну и изменения баланса указывает что всё нормально с этим.
Может что-то ещё в коде нужно прописать или изменить?
Я робот нажимать не нужно, после выполнения сниппета нужно нажимать кнопку отправить и будет счастье. В другом случае если кнопок нету, там нужно выполнять JS. Вот для теста http://lessons.zennolab.com/captchas/
 
  • Спасибо
Реакции: Astraport

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 980
Благодарностей
4 433
Баллы
113

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 980
Благодарностей
4 433
Баллы
113
arzamas17.ru
 
Последнее редактирование:

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
В общем там 2 капчи. Вбивается во вторую скрытую. при создании темы
 
  • Спасибо
Реакции: Astraport

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
В коде поправь

Код:
instance.ActiveTab.FindElementById("g-recaptcha-response").SetValue(response.Split('|')[1], "None", false);
на

Код:
instance.ActiveTab.FindElementById("g-recaptcha-response-2").SetValue(response.Split('|')[1], "None", false);
 
  • Спасибо
Реакции: Astraport

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 980
Благодарностей
4 433
Баллы
113

irmscher

Client
Регистрация
28.11.2012
Сообщения
199
Благодарностей
6
Баллы
18
Всем привет. У меня такая же проблема как у Astraport. Запрос отправляет, деньги на RuCaptcha снимаются, в логе "Execution of C# code of Result:ok".

Но каптча сама не решается, картинки ReCaptcha2 так и продолжают висеть нетронутые. Вот сайт:

https://bittrex.com/account/login

PS. Пробовал заменить g-recaptcha-response на rc-imageselect :
instance.ActiveTab.FindElementById("rc-imageselect ).SetValue(response.Split('|')[1], "None", false);
не помогает...
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
Всем привет. У меня такая же проблема как у Astraport. Запрос отправляет, деньги на RuCaptcha снимаются, в логе "Execution of C# code of Result:ok".

Но каптча сама не решается, картинки ReCaptcha2 так и продолжают висеть нетронутые. Вот сайт:

https://bittrex.com/account/login

PS. Пробовал заменить g-recaptcha-response на rc-imageselect :
instance.ActiveTab.FindElementById("rc-imageselect ).SetValue(response.Split('|')[1], "None", false);
не помогает...
Это невидимая рекапча
Вот тут написан как обойти https://rucaptcha.com/blog/invisible-recaptcha
 

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 980
Благодарностей
4 433
Баллы
113
  • Спасибо
Реакции: irmscher

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
  • Спасибо
Реакции: irmscher

eagleowl

Client
Регистрация
03.11.2012
Сообщения
263
Благодарностей
30
Баллы
28
А с вариантом с постепенно появляющимися новыми картинками в квадратах взамен нажатых тоже работает?
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43

irmscher

Client
Регистрация
28.11.2012
Сообщения
199
Благодарностей
6
Баллы
18
Спасибо :-) Будем разбиратся.
 

eagleowl

Client
Регистрация
03.11.2012
Сообщения
263
Благодарностей
30
Баллы
28
А сложность рекапчи овнером ресурса как-то регулируется?
 

amyboose

Client
Регистрация
21.04.2016
Сообщения
2 311
Благодарностей
1 191
Баллы
113
Я, как автор этого сниппета, сам столкнулся с проблемами при его работе (не хотелось искать среди файлов, быстренько скопировал с форума).
Причиной оказалось то, что при копировании из c# сниппета сюда на форум некоторые символы поменяли кодировку, добавились пробелы лишние или ещё что-то и нихера ничего не работало.
Прикрепляю тот, который у меня стабильно работал
 

Вложения

  • Спасибо
Реакции: one, kfil и som

AndreyAAA

Client
Регистрация
07.05.2016
Сообщения
1 250
Благодарностей
78
Баллы
48
Я, как автор этого сниппета, сам столкнулся с проблемами при его работе (не хотелось искать среди файлов, быстренько скопировал с форума).
Причиной оказалось то, что при копировании из c# сниппета сюда на форум некоторые символы поменяли кодировку, добавились пробелы лишние или ещё что-то и нихера ничего не работало.
Прикрепляю тот, который у меня стабильно работал
Что делать ?
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43

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