我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

本篇文章中,苏南大叔要说一个dedecms的采集模块,叫做众大云采集。之所以想写一篇文章来介绍众大云采集这款dede模块,并不是因为它代码写的多好,而且他的这种产品模式比较新鲜,采集的模式还是比较有特点的。当然,本文中,并没有提供这款众大云采集的破解版,以下载众大云采集破解版为目的的各位新人,请绕行了。

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - dede
dedecms 的一个简单易用的采集插件,众大云采集(图7-1)

本文测试环境为:dedeV5.7SP2众大云采集9.4

官方网址

众大云采集的官方域名,还是比较有趣的,叫做csdn123

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - yuncaiji
dedecms 的一个简单易用的采集插件,众大云采集(图7-2)

这款"众大云采集"代码,并不仅仅针对dedecms,也支持常见的其他php语言的cms。免费版会在正文中有个小广告,可以手工删除广告。当然这款插件,破解起来也是非常容易的。苏南大叔这里就不断人家财路了,大家有钱的帮个钱场吧。毕竟功能上写的还是相当不错的(代码却写的不是太好)。

截至到发稿,这个众大云采集插件的版本号是9.4。大多数情况下,需要上传的插件文件是:下载的压缩包里面的UTF8_install.xml文件。

使用方式

在模块=》众大云采集=》批量采集,这个菜单里面,输入关键词,输入数量,就可以获得一些随机相关文章了。使用方式很无脑,非常适合小白。

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - yuncaiji_use
dedecms 的一个简单易用的采集插件,众大云采集(图7-3)

导入数据库

众大云的数据库,可能在某些情况下,不能正常安装数据库。所以,可能需要手工执行sql。可以使用php的base64_decode()函数解开UTF8-install.xml中的加密sql文本。

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - dede_ycj_sql
dedecms 的一个简单易用的采集插件,众大云采集(图7-4)

执行sql的方式,就看您自己选择了。苏南大叔推荐您使用navicat

php72下兼容众大云采集

因为众大云采集php72下是不能正常运行的,所以,大家可以开启dede的调试模式,便于调试。
修改文件:/include/common.inc.php。调试的方式是这样的:修改常量DEDE_ENVIRONMENTdev即可。

define('DEDE_ENVIRONMENT', 'dev');

错误信息一:mysql_escape_string()

您可能会看到下面的错误提示:

Uncaught Error: Call to undefined function mysql_escape_string()
php7 已经不支持 php_mysql 扩展了,既然没有了 php_mysql 扩展,自然也就没有了 mysql_escape_string 函数。

解决方案,就是做个 mysql_escape_string 兼容。修改文件:/dede/hzw/common.fun.php。增加下面的兼容代码。

if(!function_exists('mysql_escape_string')){
    function mysql_escape_string($data){
        return addslashes(trim($data));
    }
}

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - yuncaiji_error_mysql_fix
dedecms 的一个简单易用的采集插件,众大云采集(图7-5)

错误信息二:deprecated constructor警告

**Deprecated**: Methods with the same name as their class will not be constructors in a future version of PHP; hzw_cuserLogin has a deprecated constructor in **/dede/hzw_send_archives.php** on line **8**

修改文件/dede/hzw_send_archives.php,修改构造函数的写法。(把同名函数变成__construct

//public function hzw_cuserLogin($userID)
function __construct($userID){
  $this->userID=$userID;
}

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - yuncaiji_error2_fix
dedecms 的一个简单易用的采集插件,众大云采集(图7-6)

入库为暂存状态

因为正常情况下来说,众大云采集的收费提示信息必须先发布后,才能修改掉提示信息。这个设定很不人性化。所以,苏南大叔把他设置为:采集完毕就为待发布状态,这样的话,收费信息也不会被发布出去了。原理上来说,就是把archives表中的arcrank字段设置为-1即可。

if(!empty($GLOBALS['cfg_version']) && stripos($GLOBALS['cfg_version'],'V56')===false)
{
   $query = "INSERT INTO `#@__archives`(id,typeid,typeid2,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,source,litpic,pubdate,senddate,mid,voteid,notpost,description,keywords,filename,dutyadmin,weight) VALUES ('$arcID','$cid','0','$sortrank','','0','$channelid','-1','$click','0','$title','','','$writer','','$litpic','$pubdate','$senddate','$adminid','0','0','$description','$keywords','','$adminid','0');";
} else {
   $query = "INSERT INTO `#@__archives`(id,typeid,typeid2,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,source,litpic,pubdate,senddate,mid,notpost,description,keywords,filename,dutyadmin,weight) VALUES ('$arcID','$cid','0','$sortrank','','0','$channelid','-1','$click','0','$title','','','$writer','','$litpic','$pubdate','$senddate','$adminid','0','$description','$keywords','','$adminid','0');";
}

苏南大叔:dedecms 的一个简单易用的采集插件,众大云采集 - yuncaiji_error3_fix
dedecms 的一个简单易用的采集插件,众大云采集(图7-7)

额外信息

newsn.net:这里是【作者】可见内容

总结

众大云采集的这种方式,是非常适合小白初级小编的。无需编写规则,是需要定义好关键词即可。

苏南大叔会偶尔写几篇dede的经验文字的,不过,苏南大叔对dede的代码真心是不能太赞赏,只能赞赏dede产品的成功。更多dede相关使用文字,请偶尔关注一下苏南大叔写的经验文章:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    dede