file_get_html()返回垃圾

时间:2013-06-11 09:49:20

标签: php html-parsing web-scraping

我正在使用simple_html_dom解析器。 以下代码返回垃圾输出:

$opts = array(
                'http'=>array(
            'method'=>"GET",
            'header'=>
                    "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n".
                    "Accept-Encoding: gzip, deflate\r\n".
                    "Accept-language: en-US,en;q=0.5\r\n" .
            "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6\r\n".
            "Cookie: foo=bar\r\n"
                )
    ); 
        $context = stream_context_create($opts);
        $html = file_get_html("http://freepsdfiles.net/",false,$context);

        echo $html;

enter image description here

请帮忙。我也尝试过file_get_contents()但是没有用。

1 个答案:

答案 0 :(得分:2)

从Accept-Encoding中删除'gzip'将返回未解压缩的响应。

如果您想自己处理,请参阅https://stackoverflow.com/a/10105319/1491542了解ungzip功能。