Как отправить ответ на Яндекс капчу через cURL?

218
11 декабря 2018, 07:50

Парсю страницы c Яндекса и иногда высвечивается капча. Пытаюсь сделать так, чтобы я могла ввести ее и продолжить парсинг.

cURL выглядит так:

function file_get_contents_alt($url) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]);
        curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
        curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
        curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt($ch, CURLOPT_TIMEOUT, 200);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie_yandex.txt');
        curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie_yandex.txt');
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);        
        $data = curl_exec($ch);
        curl_close($ch);
        return $data;
    }

Сам запрос:

$output = file_get_contents_alt('http://yandex.ru/checkcaptcha?key='.urlencode($_POST['capcha_key']).'&rep='.$_POST['yandex_iks_cap'].'&retpath='.urlencode(html_entity_decode($_POST['capcha_retpath'])));

Но в ответ, приходит заголовок -

HTTP/1.1 400 Bad request
Content-Length: 0

Почему и как это побороть?

READ ALSO
При создании динамического массива Critical error detected c0000374 С++

При создании динамического массива Critical error detected c0000374 С++

Возникла проблема при инициализации динамического массива

350
Помогите с фибоначи и лямбдой

Помогите с фибоначи и лямбдой

Нужно заполнить дек числами фибоначи при помощи алгоритма generate и лямбда функцииМожет кто подкинет идейку через анонимную лямбду?А то через...

307
foreach в функции

foreach в функции

Подскажите пожалуйста почему такая запись выдаёт ошибку"не найдена соответствующая функция begin, необходимая для этого основанного на диапазоне...

715
Передача массива в функцию не обьявляя его

Передача массива в функцию не обьявляя его

Как можно передать массив в функцию не обьявляя его?

181