html 用 php 解析 simple_html_dom
html parsing with php simple_html_dom
我正在解析互联网报纸的专栏页面。我对这个网站有疑问
开始时解析工作正常,但后来停止了。
这是我的代码
$curl_handle=curl_init();
curl_setopt($curl_handle, CURLOPT_URL,$gazeteAdress);
//curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'mozilla');
$query = curl_exec($curl_handle);
curl_close($curl_handle);
$html = new simple_html_dom();
$html->load($query);
我不知道为什么我的代码有时不解析站点,所以我在考虑 connection_timeout。但这不是问题,所以我想用 curl 打印 html 页面。
echo $html;
这是结果。 (有时我的代码没有正确解析 html 页面)
为什么 html 标签没有出现,为什么会看到这样的结果。有人可以帮忙吗?
将此添加到您的 php 脚本之上
header('Content-Type: text/html; charset=utf-8');
内容以压缩形式返回,因此您应该为 curl 指定 Accept-Encoding 和 'gzip,deflate' header。
请添加这一行
curl_setopt($curl_handle, CURLOPT_ENCODING, "gzip,deflate");
之后
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'mozilla');
我正在解析互联网报纸的专栏页面。我对这个网站有疑问
开始时解析工作正常,但后来停止了。
这是我的代码
$curl_handle=curl_init();
curl_setopt($curl_handle, CURLOPT_URL,$gazeteAdress);
//curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'mozilla');
$query = curl_exec($curl_handle);
curl_close($curl_handle);
$html = new simple_html_dom();
$html->load($query);
我不知道为什么我的代码有时不解析站点,所以我在考虑 connection_timeout。但这不是问题,所以我想用 curl 打印 html 页面。
echo $html;
这是结果。 (有时我的代码没有正确解析 html 页面)
为什么 html 标签没有出现,为什么会看到这样的结果。有人可以帮忙吗?
将此添加到您的 php 脚本之上
header('Content-Type: text/html; charset=utf-8');
内容以压缩形式返回,因此您应该为 curl 指定 Accept-Encoding 和 'gzip,deflate' header。
请添加这一行
curl_setopt($curl_handle, CURLOPT_ENCODING, "gzip,deflate");
之后
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'mozilla');