Задать вопрос
@jugger1

Как сделать так, что бы ответ curl запроса приходил в виде html, а не json?

Отправляю curl запрос, а в ответ приходит json файл с большим количеством массивов, который сложно распарсить. Как сделать так, что бы ответ приходил как html страница ?
$ch = curl_init();
  
        curl_setopt($ch, CURLOPT_URL, 'тут указал сайт');
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, "тут указал json");
        curl_setopt($ch, CURLOPT_ENCODING, 'gzip, deflate');

        $headers = array();
        $headers[] = 'Authority: тут сайт';
        $headers[] = 'X-Calledmethod: Event.Get';
        $headers[] = 'X-Lastmodification: 2021-01-20T175611.534664+03';
        $headers[] = 'Accept-Language: ru-RU;q=0.8,en-US;q=0.5,en;q=0.3';
        $headers[] = 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 11_0_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.67 Safari/537.36';
        $headers[] = 'Content-Type: application/json; charset=UTF-8';
        $headers[] = 'Accept: application/json, text/javascript, */*; q=0.01';
        $headers[] = 'X-Requested-With: XMLHttpRequest';
        $headers[] = 'X-Originalmethodname: RXZlbnQuR2V0';
        $headers[] = 'Origin: www.example ';
        $headers[] = 'Sec-Fetch-Site: same-origin';
        $headers[] = 'Sec-Fetch-Mode: cors';
        $headers[] = 'Sec-Fetch-Dest: empty';
        $headers[] = 'Referer: тут указал сайт';
        $headers[] = 'Cookie:тут куки"';
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

        $result = curl_exec($ch);
        if (curl_errno($ch)) {
            echo 'Error:' . curl_error($ch);
        }
        curl_close($ch);
        return $result;
  • Вопрос задан
  • 477 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега PHP
Никак, если сайт не поддерживает отдачу html.
Если же поддерживает, то это уже зависит от самого сайта - там может быть это как угодно реализовано. Начать можно с указания корректного заголовка Accept.

Постановка "мне сложно распарсить JSON, поэтому я хочу парсить HTML" очень-очень странная, потому что как раз с JSON работать намного проще. Если, конечно, вы не сам этот HTML формируете (но тогда при чём тут "парсить"?).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы