Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 29.11.2017, 10:49   #1
frenkRus
Новичок
Джуниор
 
Регистрация: 29.11.2017
Сообщений: 3
По умолчанию Как отправить запрос на api.anti-captcha.com

помогите правильно сформировать запрос https://api.anti-captcha.com/createTask из документации https://anticaptcha.atlassian.net/wi...074/createTask
посылаю запрос следующим образом в ответ ошибка:

PHP код:


$img 
get('https://vk.com/captcha.php?sid=754992427803&dif=1');
$rev get("https://api.anti-captcha.com/createTask",  json_encode(array(
        
'clientKey' => 'b56ji798hbul8nN54gvsejnfc',
        
'task' => array(
            
'type' => 'ImageToTextTask',
            
'body' => base64_encode($img),
    ))));
echo 
$rev;

function 
get($url null$post null)
{
    
$ch curl_init();
    
curl_setopt($chCURLOPT_URL$url);    
    
curl_setopt($chCURLOPT_HEADERtrue);    
    
curl_setopt($chCURLOPT_RETURNTRANSFERtrue);    
    
curl_setopt($chCURLOPT_COOKIEJAR'cookies.txt');    
    
curl_setopt($chCURLOPT_COOKIEFILE'cookies.txt');    
    if (isset(
$post)) {
        
curl_setopt($chCURLOPT_POSTtrue);
        
curl_setopt($chCURLOPT_POSTFIELDS$params);    //    Параметр POST-запроса
    
}
    
$result curl_exec($ch);
  
curl_close($ch);
     return 
$result;

ошибка
Цитата:
{"errorId":22,"errorCode":"ERROR_TA SK_ABSENT","errorDescription":"Task property is empty or not set. Please refer to API v2 documentation."}
frenkRus вне форума Ответить с цитированием
Старый 29.11.2017, 12:11   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,209
По умолчанию

Код:
        'clientKey' => 'b56ji798hbul8nN54gvsejnfc', 
        'task' => array( 
            'type' => 'ImageToTextTask', 
            'body' => base64_encode($img), 
    ))));
Ну так в документации на CreateTask описано 5 параметров, а Вы только два передаёте
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 29.11.2017, 12:31   #3
frenkRus
Новичок
Джуниор
 
Регистрация: 29.11.2017
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Sciv Посмотреть сообщение
Код:
        'clientKey' => 'b56ji798hbul8nN54gvsejnfc', 
        'task' => array( 
            'type' => 'ImageToTextTask', 
            'body' => base64_encode($img), 
    ))));
Ну так в документации на CreateTask описано 5 параметров, а Вы только два передаёте
я написал обязательные, остальные не обязательные
frenkRus вне форума Ответить с цитированием
Старый 29.11.2017, 15:48   #4
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,209
По умолчанию

А дальше, пропертосы самой таски тоже необязательные?

https://anticaptcha.atlassian.net/wi...mageToTextTask
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 29.11.2017, 15:53   #5
frenkRus
Новичок
Джуниор
 
Регистрация: 29.11.2017
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Sciv Посмотреть сообщение
А дальше, пропертосы самой таски тоже необязательные?

https://anticaptcha.atlassian.net/wi...mageToTextTask
не обязательные, но все равно пробывал неотправляет
frenkRus вне форума Ответить с цитированием
Старый 29.11.2017, 16:01   #6
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,209
По умолчанию

Цитата:
не обязательные, но все равно пробывал неотправляет
Цитата:
Task property is empty or not set. Please refer to API v2 documentation
И всё-таки ругается на то, что свойство таски пустое или не установлено.

Ну и если воспользоваться поиском по указанному спэйсу с описанием АПИ можно найти и список ошибок: https://anticaptcha.atlassian.net/wi...I/pages/196679

В нём вообще указано, что эта ошибка возникает, если Отсутствует задача в методе createTask.

Также имеет смысл обратить внимание на переносы строк в $img: "Содержимое файла капчи закодированное в base64. Убедитесь что шлете его без переносов строки."

А вообще - нужно смотреть отдельно, что возвращает JSON_encode.

P.S. У них там и пример для PHP имеется: https://anticaptcha.atlassian.net/wi...05035/Examples
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...

Последний раз редактировалось Sciv; 29.11.2017 в 16:04.
Sciv вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# (WinForms) — Как сделать GET запрос(VK API)? Tony1337 C# (си шарп) 4 23.05.2017 11:54
Отправить POST запрос nibufep PHP 9 30.09.2015 18:26
Как отправить web-запрос GET Никки Общие вопросы .NET 1 19.08.2009 08:44
Отправить запрос kommunist Общие вопросы .NET 4 30.06.2008 00:47
как копировать файлы Kaspersky Anti-Virus Personal\5.0\Bases\*.* Podlec Безопасность, Шифрование 3 16.11.2007 12:37