Почему нельзя получить HTML-код этого URL? - PullRequest
0 голосов
/ 16 августа 2011

Я использовал file_get_contents, curl, простой html dom, но не могу получить HTML по этому URL: http://www.zing.vn/news/xa-hoi/choang-voi-clip-cu-ba-cao-tuoi-nhay-boc-nhu-vu-cong/a124040.html

Не знаю почему, но в результате появляются случайные символы, а не HTML-код.

Ответы [ 2 ]

4 голосов
/ 16 августа 2011

Похоже, что эта веб-страница всегда возвращает закодированный gzip контент (даже если клиент не заявляет о его поддержке).Вы можете декодировать сжатый контент, используя gzinflate.

2 голосов
/ 16 августа 2011

Вам нужно установить CURLOPT_ENCODING , если пусто, curl будет обрабатывать саму кодировку, и это именно то, что вам нужно:)

Я протестировал приведенный ниже код, и он возвращает правильную кодировку символов.

$url ="http://www.zing.vn/news/xa-hoi/choang-voi-clip-cu-ba-cao-tuoi-nhay-boc-nhu-vu-cong/a124040.html";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_ENCODING,""); 
$pagebody=curl_exec ($ch);
curl_close ($ch);

echo $pagebody;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...