Отправка текста капчи возвращает ошибку "Please fill out the reCAPTCHA" - C#
Формулировка задачи:
Пытаюсь авторизоваться на сайте, с помощью c# xNet.dll
Получаю challenge значение, капчи.
Получаю капчу.
Разгадывание капчи, путем AntiGate
И мне сайт возвращает ответ, что я не ввел капчу.
Выдает ошибку
Please fill out the reCAPTCHA.
Снифер показывает, что все отправляется.
//лоадим капчу CookieDictionary cookies = new CookieDictionary(); request.Cookies = cookies; request.UserAgent = HttpHelper.ChromeUserAgent(); request.Referer = "http://site.com/access/login"; string content = request.Get("http://api.recaptcha.net/challenge?k=6LfUUtMSAAAAAOBuPTWtMAnAu3l9AS-iHZb6iFpp").ToString(); Regex reg = new Regex(@"challenge \: \'(.*)\',"); string img = reg.Match(content).Groups[1].Value.ToString(); WebClient client = new WebClient(); client.DownloadFile("http://api.recaptcha.net/image?c=" + img, "captcha.jpg"); AntiCaptcha anticap = new AntiCaptcha(this.txtAntigate.Text); anticap.CheckDelay = 10000; anticap.CheckRetryCount = 20; anticap.SlotRetry = 5; anticap.SlotRetryDelay = 800; string result = "none"; try { // отправляем файл и ждем ответа string answer = anticap.GetAnswer("captcha.jpg"); if (answer != null) result = answer; } catch (AntigateErrorException aee) { MessageBox.Show(aee.ToString()); } MessageBox.Show(result); request.Cookies = cookies; request.UserAgent = HttpHelper.ChromeUserAgent(); request.Referer = "http://site.com/access/login"; request.AddParam("username", data[0]); request.AddParam("password", data[1]); request.AddParam("rememberme", "off"); request.AddParam("recaptcha_challenge_field", img); request.AddParam("recaptcha_response_field", result); content = request.Post("http://site.com/access/submit").ToString();
Кто поможет?
Решение задачи: «Отправка текста капчи возвращает ошибку "Please fill out the reCAPTCHA"»
textual
Листинг программы
humanverify[hash] challenge k
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д