С капчей ВК помогите пожалуйста ...

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
Ребята всем привет! прилетает капча при работе в контакте ...Вот такая ссылка получается http://api.vk.com/captcha.php?sid=926772713298&s=1 после обработки . Это урл капчи , вопрос , как ее передать по апи в рукапчу по АПИ?


У них вот такая вот форма , для отправки текстовой капчи

<form method="post" action="http://rucaptcha.com/in.php" enctype="multipart/form-data">
<input type="hidden" name="method" value="post">
Ваш ключ:
<input type="text" name="key" value="YOUR_APIKEY">
Файл капчи:
<input type="file" name="file">
<input type="submit" value="Загрузить и получить ID">
</form>


Я просто не врубаюсь как мне передать капчу в зенке в рукапчу по АПИ ? Помогите пожалуйста , добрые люди.....
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 800
Благодарностей
1 405
Баллы
113
Дак просто навести на нее курсор мыши и в контекстном меню кликнуть что это капча, там кубик автоматом появится. Или у вас шаблон на запросах и надо передать ее в рукапчу самостоятельно пост/гет запросами?
 

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
Дак просто навести на нее курсор мыши и в контекстном меню кликнуть что это капча, там кубик автоматом появится. Или у вас шаблон на запросах и надо передать ее в рукапчу самостоятельно пост/гет запросами?

Шаблон на запросах....
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 800
Благодарностей
1 405
Баллы
113
C#:
                    string captcha_file = "http://api.vk.com/captcha.php?sid=926772713298&s=1";
                    string captcha_key = "";
                    
                    using(var image = System.Drawing.Image.FromFile(@captcha_file)){
                        string base64String = String.Empty;
                        using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) {
                            image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
                            byte[] imageBytes = ms.ToArray();
                            base64String = Convert.ToBase64String(imageBytes);
                        }
                        captcha_key = ZennoPoster.CaptchaRecognition("RuCaptcha.dll", base64String, "");
                        var tmp = captcha_key.Split(new [] {"-|-"}, StringSplitOptions.None);
                        if (tmp.Length > 1)
                        captcha_key = tmp[0];
                    }
                    
                    // тут в captcha_key у нас разгаданный код капчи
 
  • Спасибо
Реакции: zios

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
C#:
                    string captcha_file = "http://api.vk.com/captcha.php?sid=926772713298&s=1";
                    string captcha_key = "";
                   
                    using(var image = System.Drawing.Image.FromFile(@captcha_file)){
                        string base64String = String.Empty;
                        using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) {
                            image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
                            byte[] imageBytes = ms.ToArray();
                            base64String = Convert.ToBase64String(imageBytes);
                        }
                        captcha_key = ZennoPoster.CaptchaRecognition("RuCaptcha.dll", base64String, "");
                        var tmp = captcha_key.Split(new [] {"-|-"}, StringSplitOptions.None);
                        if (tmp.Length > 1)
                        captcha_key = tmp[0];
                    }
                   
                    // тут в captcha_key у нас разгаданный код капчи
Image.FromFile разве умеет с урлом работать? А даже если умеет, без проброса кук на капчах ловить нечего
 

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
Выполнение действия CSharp OwnCode. Форматы URI не поддерживаются.


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

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
Как пробросить капчу в рукпчу ? С вк апи?
нужно скачать капчу гет запросом с использованием кук проекта. И полученный файл передать через код, указанный выше. Только вместо урла там должен быть путь к картинке полученной
 
  • Спасибо
Реакции: WebBot

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 800
Благодарностей
1 405
Баллы
113
@doc прав, накладочка вышла .. капчу сначала нужно скачать обычным гет запросом

Все остается то же самое, только captcha_file в первой строке меняем на

C#:
string captcha_file = ZennoPoster.HttpGet("http://api.vk.com/captcha.php?sid=926772713298&s=1", "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.File,30000,"","",true,5,new string[]{""});
 

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
@doc прав, накладочка вышла .. капчу сначала нужно скачать обычным гет запросом

Все остается то же самое, только captcha_file в первой строке меняем на

C#:
string captcha_file = ZennoPoster.HttpGet("http://api.vk.com/captcha.php?sid=926772713298&s=1", "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.File,30000,"","",true,5,new string[]{""});



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

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
как в этом коде менять домены с капчей?
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 800
Благодарностей
1 405
Баллы
113
если допустим url капчи у вас в переменной captcha_url, то пишите так:
C#:
string captcha_file = ZennoPoster.HttpGet(project.Variables["captcha_url"].Value, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.File,30000,"","",true,5,new string[]{""});
 

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
А как быть с АПи клбчем от рукапчи? Куда его вставлять? каким образом код передаст данные без этого ключа ?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 652
Баллы
113
А как быть с АПи клбчем от рукапчи? Куда его вставлять? каким образом код передаст данные без этого ключа ?
это код зенновского метода. Он подхватывает ключи из настроек программы
 
  • Спасибо
Реакции: zios и WebBot

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
Что за невезуха ...

string captcha_file = ZennoPoster.HttpGet(project.Variables["captcha_result"].Value, "", "UTF-8", ZennoLab.InterfacesLibrary.Enums.Http.ResponceType.File,30000,"","",true,5,new string[]{""});


вот такую переменную вставил , пишет что все отработано , но капча не решается все равно ....

галку нужно ставитьв настройках - не возвращать значение? с указанием переменной ? sorry только осваиваю запросы ....
 

WebBot

Client
Регистрация
04.04.2015
Сообщения
1 800
Благодарностей
1 405
Баллы
113
Я уже давно не пользуюсь таким возвратом переменных из кубика, поэтому даже не пишу этот момент ...
Но если вам так проще, то да, выключите галочку "Не возвращать значение" и укажите переменную в которую нужно вернуть результат.

А в коде самой последней строкой добавьте
C#:
return captcha_key;
 
  • Спасибо
Реакции: zios

zios

Client
Регистрация
29.01.2016
Сообщения
306
Благодарностей
9
Баллы
18
Спасибо всем кто помогал! Все получилось ....очень благодарен вам парни ....
 

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