QureyList抓取不同编码页面,获取内容为空

疑难杂症   2025-02-15 16:18   170   1  

前段时间通过QueryList抓取最新省市区地址信息的时候,出现了两个问题:
1、目标页面是GB2312编码的,我存的数据库是UTF-8编码的,在中文转码的时候,发现如果中文太复杂,抓取内容会被抛弃而导致内容抓取不全,获取的数据丢失;
2、一次抓取所有页面内容的时候,有时候程序会突然中断掉,嵌套页面抓取失败;

首先介绍一下什么是QueryList,QueryList是一个基于phpQuery的采集工具。QueryList具有jQuery一样的DOM操作能力、Http网络操作能力、乱码解决能力、内容过滤能力以及可扩展能力;可以轻松实现诸如:模拟登陆、伪造浏览器、HTTP代理等意复杂的网络请求;拥有丰富的插件,支持多线程采集以及使用PhantomJS采集JavaScript动态渲染的页面。

问题1:
用queryList抓取页面的时候,发现不同编码转换的时候,遇到复杂的中文,直接会把从复杂字开始的后面内容全部抛弃掉,比如:我要抓取的是省市区列表,在列表中遇到复杂中文的时候,从当前这条开始到后面的记录就全部丢失掉了;于是便去queryList源码查找原因。

// QueryList.php
public static function Query($page,array $rules, $range = '', $outputEncoding = null, $inputEncoding = null,$removeHead = false)
    {
        return  self::getInstance()->_query($page, $rules, $range, $outputEncoding, $inputEncoding,$removeHead
博客评论
New Home Communities
说:

With havin so much written content do you ever run into any

issues of plagorism or copyright violation? My

website has a lot of unique content I've either created myself or

outsourced but it looks like a lot of it is popping it up all over the internet without my authorization. Do you know any techniques

to help prevent content from being ripped off? I'd genuinely appreciate it.

1
发表评论
说明:请文明发言,共建和谐网络,您的个人信息不会被公开显示。
闲言碎语
钱虽然难赚,但是容易花啊。
赞赏支持

如果觉得博客文章对您有帮助,异或土豪有钱任性,可以通过以下扫码向我捐助。也可以动动手指,帮我分享和传播。您的肯定,是我不懈努力的动力!感谢各位亲~