Проблема с печатью PHP Curl

#php

#php

Вопрос:

Я пытаюсь напечатать HTML внешнего сайта с помощью curl, но когда я перехожу к печати html, я просто получаю кучу плохих символов:

 DÓLþ¢GΖ´ï!ñ{HÑ,Jþ»H¹§L ÷53j?‰²î¡<‘*tÜe÷uÖbìê~Æô¬²c˜‹§ ~áäÆL#f?ⶊªþU™á˜ÉÉOæ{^¤ëaÀ Tê"1Û¨Dtî’œxˆk‘:@ŽD5î:'¶e*³q‘׸`…±¾ôäó÷ð1j7þä‘åQ6®9bcxã„A2ã—-ÇøüåÉò÷2{ÂÐe桢ǙŒÄg©Az!Ø¡>±zך ;f RZÛÝ€ížáÒžHa¬¢Æ'ë•ñ þ=Ð=ºtyšÖâå'ÇpžÄ¦ÆN½€5½roåðFe¹)ˆš`ØnhŠy(GÆÔ} Bu7H¥JzÐ iVê÷áÆ”øG>6HÿUµÞhµj YH-ÌaaEÚx±‰…Êâ£-ûeÎqCÆLÌå㘎‰†LÐÆM I]€a)Ï.$—ÅH••£ ŒŒ’ªÉ;cŽc(i´¥!I]‹€„³tFc^ë'€e±øÉ_øß
  

Вот мой код:

 $curl = curl_init();
curl_setopt ($curl, CURLOPT_URL, "http://www.thesite.com/");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec ($curl);
curl_close ($curl);
print $result; 
  

Любая помощь была бы отличной,

Спасибо!

Комментарии:

1. Итак, какой URL вы запрашиваете? Вы пробовали запрашивать это в браузере с помощью пустого пользовательского агента? Что вы получаете?

2. URL-адрес не важен, потому что он будет часто меняться, я просто хочу захватить весь HTML-код в документе, на который я указываю curl.

3. Вы получаете заголовки обратно? Проверьте заголовок Content-Encoding. тело может быть сжато. Если вы даже не получаете заголовки обратно, вы уверены, что подключаетесь к HTTP-серверу?

4. Не могли бы вы объяснить немного больше?

Ответ №1:

Если ответ GZIP’d, вы можете использовать это:

 curl_setopt($curl, CURLOPT_ENCODING, 'gzip');
  

Смотрите: http://www.php.net/manual/en/function.curl-setopt.php

Чтобы убедиться, что это gzip’d, проверьте заголовки (см. CURLOPT_HEADER ).