dedecms采集过滤规则 万能采集过滤代码 常用过滤

1358

dedecms自带的采集系统确实很不错,可以免去一些手工添加信息的麻烦,设置一下dede采集规则、采集点,然后点采集,OK,几百篇文章就搞定了!呵呵,确实很省事的!下面介绍几种常用采集规则的过滤方法:

应用示例一:dedecms过滤标题空格
经常在采集文章的时候,标题文字里面有空格,采回来后应用很是麻烦,所以需要在标题处过滤处添加下面正则过滤

{wmd:trim} {/wmd:trim}   注意:中间是有一个空格

应用示例二:来源作者中连接的过滤
在采集文章的时候,有的网站系统里面作者或者来源处都带有连接,直接采集的话将连接采集回来了,然后由于这两个字段有限制,通常会造成需要采集的内容没有采集回来,所以需要在过滤处添加下面正则过滤。

1,如果要保留dedecms链接中的文字:
{wmd:trim}<a([^>]*)>{/wmd:trim}
{wmd:trim}</a>{/wmd:trim}

2,如果去掉链接中的文字:
{wmd:trim}<a ([^>]*)>([^<]*)</a>{/wmd:trim}

应用示例三:文章内容中连接以及其他广告代码的过滤
这个就不用说了,当需要对所有东西过滤的时候,直接用上面所有的代码过滤就可以,但是实际应用中,我们只需要对连接、动画、调用等进行过滤。(这个需要按照对方内容里面具体含有什么代码来具体操作)
一般的只有链接,使用二中的代码进行过滤就可以了,但是实际上一般的网站现在都在内容里面加有广告等,所以采取下面的过滤正则就可以完成过滤:

{wmd:trim}<a([^>]*)>([^<]*)</a>{/wmd:trim}
{wmd:trim}<IFRAME([^>]*)>([^>]*)</IFRAME>{/wmd:trim}
{wmd:trim}<object([^>]*)>([^>]*)</object>{/wmd:trim}
{wmd:trim}<script([^>]*)>([^>]*)</script>{/wmd:trim}

过滤div可以用
{wmd:trim}]*)>{/wmd:trim}
{wmd:trim}
{/wmd:trim}

过滤js用下面这个
{wmd:trim}]*)>([^<]*){/wmd:trim}

过滤未知变量字符
固定(.*)固定

应用示例四:过滤GG广告代码
其实这个就是在上面的内容过滤,但是很多论坛里的网友经常问这个,所以单独作为一个应用列出来:

{wmd:trim}<script([^>]*)>([^>]*)</script>{/wmd:trim}

下面是在综合论坛上网友的各种正则的一个dedecms规则过滤全集:

{wmd:trim}<param([^>]*)>{/wmd:trim}
{wmd:trim}<embed([^>]*)>([^>]*)</embed>{/wmd:trim}
{wmd:trim}<embed([^>]*)>{/wmd:trim}
{wmd:trim}</embed>{/wmd:trim}
{wmd:trim}<object([^>]*)>([^>]*)</object>{/wmd:trim}
{wmd:trim}<object([^>]*)>{/wmd:trim}
{wmd:trim}</object>{/wmd:trim}
{wmd:trim}<OBJECT([^>]*)>([^>]*)</OBJECT>{/wmd:trim}
{wmd:trim}<OBJECT([^>]*)>{/wmd:trim}
{wmd:trim}</OBJECT>{/wmd:trim}
{wmd:trim}<iframe([^>]*)>([^>]*)</iframe>{/wmd:trim}
{wmd:trim}<iframe([^>]*)>{/wmd:trim}
{wmd:trim}</iframe>{/wmd:trim}
{wmd:trim}<IFRAME([^>]*)>([^>]*)</IFRAME>{/wmd:trim}
{wmd:trim}<IFRAME([^>]*)>{/wmd:trim}
{wmd:trim}</IFRAME>{/wmd:trim}
{wmd:trim}<font([^>]*)>([^<]*)</font>{/wmd:trim}
{wmd:trim}<font([^>]*)>{/wmd:trim}
{wmd:trim}</font>{/wmd:trim}
{wmd:trim}<a([^>]*)>([^<]*)</a>{/wmd:trim}
{wmd:trim}<a([^>]*)>{/wmd:trim}
{wmd:trim}</a>{/wmd:trim}
{wmd:trim}<td([^>]*)>([^>]*)</td>{/wmd:trim}
{wmd:trim}<td([^>]*)>{/wmd:trim}
{wmd:trim}</td>{/wmd:trim}
{wmd:trim}<tr([^>]*)>([^>]*)</tr>{/wmd:trim}
{wmd:trim}<tr([^>]*)>{/wmd:trim}
{wmd:trim}</tr>{/wmd:trim}
{wmd:trim}<tbody([^>]*)>([^>]*)</tbody>{/wmd:trim}
{wmd:trim}<tbody>{/wmd:trim}
{wmd:trim}</tbody>{/wmd:trim}
{wmd:trim}<table([^>]*)>([^>]*)</table>{/wmd:trim}
{wmd:trim}<table([^>]*)>{/wmd:trim}
{wmd:trim}</table>{/wmd:trim}
{wmd:trim}<img([^>]*)>{/wmd:trim}
{wmd:trim}<span([^>]*)>{/wmd:trim}
{wmd:trim}</span>{/wmd:trim}
{wmd:trim} {/wmd:trim}
{wmd:trim}<stong>{/wmd:trim}
{wmd:trim}</stong>{/wmd:trim}

好了,上面四种应用基本上涵盖了采集的各种应用,掌握了这个,过滤基本上就不用求人了!下面教大家一个更简单的方法,把下面的过滤规则复制到你那里去,几乎就可以处理所有的问题了,当然也可以自己分析一下。
{wmd:trim}<span(.*)>{/wmd:trim}
{wmd:trim}</span>{/wmd:trim}
{wmd:trim}<div(.*)>{/wmd:trim}
{wmd:trim}</div>{/wmd:trim}
{wmd:trim}<li>{/wmd:trim}
{wmd:trim}</li>{/wmd:trim}
{wmd:trim}<ul>{/wmd:trim}
{wmd:trim}</ul>{/wmd:trim}
{wmd:trim}<font(.*)>{/wmd:trim}
{wmd:trim}</font>{/wmd:trim}
{wmd:trim}<table(.*)>{/wmd:trim}
{wmd:trim}</table>{/wmd:trim}
{wmd:trim}<tbody(.*)>{/wmd:trim}
{wmd:trim}</tbody>{/wmd:trim}
{wmd:trim}<tr(.*)>{/wmd:trim}
{wmd:trim}</tr>{/wmd:trim}
{wmd:trim}<td(.*)>{/wmd:trim}
{wmd:trim}</td>{/wmd:trim}
{wmd:trim}<a(.*)>{/wmd:trim}
{wmd:trim}</a>{/wmd:trim}
{wmd:trim}<iframe(.*)</iframe>{/wmd:trim}
{wmd:trim}<style(.*)</style>{/wmd:trim}
{wmd:trim}<script(.*)</script>{/wmd:trim}
{wmd:trim}<option(.*)</option>{/wmd:trim}
{wmd:trim}<select(.*)</select>{/wmd:trim}
{wmd:trim}<embed(.*)>{/wmd:trim}
{wmd:trim}</embed>{/wmd:trim}
{wmd:trim}<param(.*)</param>{/wmd:trim}
{wmd:trim}<object(.*)</object>{/wmd:trim}

上面这一段万能采集过滤代码,不能用来采集带有视频的页面,因为已经过滤了视频,最后的四行是过滤掉视频的。如果你确认要采集视频,那就去掉最后四行。

另外,提供ecshop二次开发和ecshop精美模板,敬请 关注木木轩商铺( http://mumu58.taobao.com)。

 

The End

相关推荐

织梦dedecms生成报错Fatal error: Allowed memory size of in /include
织梦生成静态html页面时报错:Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 71 bytes) in /wwwroot/include/helpers/string.helper.php on line 121 字面意思理解是内存不足,很多朋友可能认为是内存不足问题,实际上不...
2023-10-13 dedecms安装使用
329

织梦Dedecms限制栏目列表生成的页数
有时候我们的文档特别的多,另外也是为防止网站被采集,全站文章被索引,所以要控制下织梦dedecms列表页面数量。 这样的话我们要具体怎么操作呢? 1、首先建立一个全局变量: 在系统-站点设置中添加一个新的变量,变量名称:cfg_listmaxpage,变量说明:栏目...
2023-05-24 dedecms安装使用
126

dedecms织梦全局变量调用方法总结
dedecms织梦的全局变量可以在/include/common.inc.php文件中看到,此文件内定义了大量的全局变量,详细自己去看看。 如果我们要实用dedeCMS织梦全局变量该如何调用: 第一种单独调用: {wmd:global.变量名 /},注意闭合,否则会以文本形式输出。这种一般适用...
2023-03-01 dedecms安装使用
238

织梦DEDECMS 栏目文章文章命名规则修改
织梦DEDECMS 栏目文章文章命名规则修改, 每次添加栏目的时候 都要改文章命名规则,十分麻烦, 修改下面这个地方就可以一改永亦,织梦模板网为您解答 找到\include\common.inc.php 搜索 $cfg_df_namerule 把: $cfg_df_namerule = {typedir}/{Y}/{M}{D}/{aid...
2021-09-24 dedecms安装使用
165

解决dedecms织梦系统{wmd:arclist keyword='动态获取关键词'}只生效一次
当我们通过{wmd:arclist keyword=关键词}来调用文章列表时,你会发现只在其中一个栏目里生效,在其他栏目,仍然显示上一次的关键词。 原因是由于arclist的缓存导致的。 只需修改/include/taglib/arclist.lib.php文件,大概在384行: $taghash = md5(seriali...
2021-09-24 dedecms安装使用
212

织梦dedecms数据库内容替换安全确认码怎么去掉
我们在使用织梦dedecms数据库内容替换时候,经常遇到 安全码 显示的无法识别或者不清晰,这个安全码的位置是在核心 - 批量维护 - 数据库内容替换,如果识别不了,这个页面还没有改变验证码的地方,只能重新刷新页面,如果我们不想要这个安全码的话,要怎么操...
2021-09-24 dedecms安装使用
109