phpQuery采集乱码问题解决方案
今天写了一个采集程序,去网上查了查,phpQuery比较好用(没用过啊),就下来试试。
结果,好用是好用(曾经用curl写了一个采集程序,采集某汽车网站所有品牌车系车型,当时没写过爬虫,因为捉急也没考虑其它方法,所有的数据都是正则匹配出来的,泪~~~)
貌似偏题了啊。
好用是好用,就是采集下来的内容是特么乱码啊。
去网上找了好久,最终得到一个略靠谱的解释,和循着这个解释能得到结果的答案。
原因是phpQuery认不清目标网页是什么编码,即找不到meta属性的时候,会默认转换成iso-8859-1的格式。
所以乱码么,需要先从iso-8859-1的格式转换成utf-8的格式,再转换成GBK的格式。
就能得到满意的结果了。
如下:
$t = pq("h1#h1title")->text();
$t = mb_convert_encoding($t,"ISO-8859-1","utf-8");
$t = mb_convert_encoding($t,"utf-8","GBK");
echo $t;
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇:没有了
- 下一篇: TP中config定义常量,在action中调用
copyright © 2008-2019 入门客AI创业平台 版权所有 备案号:湘ICP备2023012770号