当前位置: 首页 > 图文教程 > 网络编程 > PHP > dede3.1分页文字采集过滤规则详说(图文教程)续四

PHP
PHP新手总结的PHP基础知识
php实现gb2312和unicode间编码转换
用php语言实现数据库连接详细代码介绍
详细解析 PHP 向 MySQL 发送数据过程
利用PHP V5开发多任务应用程序
详细讲解PHP中缓存技术的应用
php escapeshellcmd多字节编码漏洞
《PHP设计模式介绍》导言
《PHP设计模式介绍》第一章 编程惯用法
《PHP设计模式介绍》第二章 值对象模式
《PHP设计模式介绍》第三章 工厂模式
《PHP设计模式介绍》第四章 单件模式
《PHP设计模式介绍》第五章 注册模式
《PHP设计模式介绍》第六章 伪对象模式
《PHP设计模式介绍》第七章 策略模式
《PHP设计模式介绍》第八章 迭代器模式
《PHP设计模式介绍》第九章 观测模式
《PHP设计模式介绍》第十章 规范模式
《PHP设计模式介绍》第十一章 代理模式
《PHP设计模式介绍》第十二章 装饰器模式

PHP 中的 dede3.1分页文字采集过滤规则详说(图文教程)续四


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 311 ::
收藏到网摘: n/a

至此,分页内容匹配进行完毕。
文章内容匹配、分页内容匹配都进行完后,最后就只有“过滤”了,包括分页区域过滤和文章内容过滤。据本人的感觉,上面的两个规则都好写,只要找到全部链接中的“唯一性”代码就搞定,但过滤规则里却是欲说还休,道不尽的无穷奥妙……哈哈,感觉就是这样。尤其如我一般的新手,对“正则”这个东西如临天书,找了几个正则方面的软件吧仍觉无从下手,就只好依样画样,照猫画虎,依葫芦画瓢地摸索了。
好了,闲话了。也累了,听听《加州旅馆》吧,在这:加州旅馆_老鹰乐队94现场 放松下吧。
你一眼看出来了过滤规则怎么写么,反正我是没能看得出来,没办法,新手就是新手呀。不管它,那就依照原范例的分页过滤规则写个规则试试看看结果吧:
复制代码 代码如下:

{dede:trim}<td align='center' height='30'>(.*)页次{/dede:trim}

采集一下:


分页成功了,但废码多,还得改!
看下多余的代码特征,好象是过滤范围不够,后面的很多内容都要过滤掉。那好,把过滤区域再往后移,直接移至描红部分吧(其实我在改过滤规则的时候,改了好几次,这里就一次到位吧,不耽误朋友们的时间了):


写个完整的分页过滤规则:
复制代码 代码如下:

{dede:trim}<td align='center' height='30'>(.*)</option></select></td>{/dede:trim}

再采集下,看看结果:


好了,分页成功,无多余代码。至此,全部主要的代码部分完成。
结果在这里:
有分页的:党员干部作风整顿剖析材料
无分页的: 文艺部工作计划
写一个完成的站点规则:
复制代码 代码如下:

{!-- 节点基本信息 --}
{dede:item name='天水_工作计划_1页'
imgurl='/upimg' imgdir='../upimg' language='gb2312' typeid='1' macthtype='string'}
{/dede:item}
{!-- 采集列表获取规则 --}
{dede:list source='var' sourcetype='list'
varstart='' varend=''}
{dede:url value='http://www.tiansou.net/Html/Y_CYFW/R_Gzzj/F_Gzjh/index.html'}{/dede:url}
{dede:need}Gzjh/2007-{/dede:need}
{dede:cannot}Gzjh/2007-1{/dede:cannot}
{dede:linkarea}[var:区域]{/dede:linkarea}
{/dede:list}
{!-- 网页内容获取规则 --}
{dede:art}
{dede:sppage sptype='full'}<td align='center' height='30'>首页 上页[var:分页区域]页次{/dede:sppage}
{dede:note field='dede_archives.title' value='[var:内容]' comment='文章标题'
isunit='' isdown=''}
{dede:match}<title>[var:内容]--天水搜索</title>{/dede:match}
{dede:function}{/dede:function}
{/dede:note}
{dede:note field='dede_archives.sortrank' value='[var:内容]' comment='排序级别'
isunit='' isdown=''}
{dede:match}{/dede:match}
{dede:function}@me = time();{/dede:function}
{/dede:note}
{dede:note field='dede_archives.writer' value='[var:内容]' comment='文章作者'
isunit='' isdown=''}
{dede:match}{/dede:match}
{dede:function}{/dede:function}
{/dede:note}
{dede:note field='dede_archives.litpic' value='[var:内容]' comment='缩略图'
isunit='' isdown=''}
{dede:match}{/dede:match}
{dede:function}@me = @litpic;{/dede:function}
{/dede:note}
{dede:note field='dede_archives.pubdate' value='[var:内容]' comment='发布时间'
isunit='' isdown=''}
{dede:match}{/dede:match}
{dede:function}if(@me!="") @me = GetMkTime(@me);
else @me = time();{/dede:function}
{/dede:note}
{dede:note field='dede_archives.senddate' value='[var:内容]' comment='录入时间'
isunit='' isdown=''}
{dede:match}{/dede:match}
{dede:function}@me = time();{/dede:function}
{/dede:note}
{dede:note field='dede_addonarticle.body' value='[var:内容]' comment='文章内容'
isunit='1' isdown='1'}
{dede:match}</TR>
<TR>
<TD height="8"></TD>
</TR>
<TR>
<TD valign="top" class=Connet><p>[var:内容]</p>
</TD>
</TR>{/dede:match}
{dede:trim}<td align='center' height='30'>(.*)</option></select></td>{/dede:trim}
{dede:trim}
{/dede:trim}
{dede:trim}<param([^>]*)>{/dede:trim}
{dede:trim}<embed([^>]*)>([^>]*)</embed>{/dede:trim}
{dede:trim}<embed([^>]*)>{/dede:trim}
{dede:trim}</embed>{/dede:trim}
{dede:trim}<object([^>]*)>([^>]*)</object>{/dede:trim}
{dede:trim}<object([^>]*)>{/dede:trim}
{dede:trim}</object>{/dede:trim}
{dede:trim}<OBJECT([^>]*)>([^>]*)</OBJECT>{/dede:trim}
{dede:trim}<OBJECT([^>]*)>{/dede:trim}
{dede:trim}</OBJECT>{/dede:trim}
{dede:trim}<iframe([^>]*)>([^>]*)</iframe>{/dede:trim}
{dede:trim}<iframe([^>]*)>{/dede:trim}
{dede:trim}</iframe>{/dede:trim}
{dede:trim}<IFRAME([^>]*)>([^>]*)</IFRAME>{/dede:trim}
{dede:trim}<IFRAME([^>]*)>{/dede:trim}
{dede:trim}</IFRAME>{/dede:trim}
{dede:trim}<font([^>]*)>([^<]*)</font>{/dede:trim}
{dede:trim}<font([^>]*)>{/dede:trim}
{dede:trim}</font>{/dede:trim}
{dede:trim}<img([^>]*)>{/dede:trim}
{dede:trim}<a([^>]*)>([^<]*)</a>{/dede:trim}
{dede:trim}<a([^>]*)>{/dede:trim}
{dede:trim}</a>{/dede:trim}
{dede:trim}<td([^>]*)>([^>]*)</td>{/dede:trim}
{dede:trim}<td([^>]*)>{/dede:trim}
{dede:trim}</td>{/dede:trim}
{dede:trim}<tr([^>]*)>([^>]*)</tr>{/dede:trim}
{dede:trim}<tr([^>]*)>{/dede:trim}
{dede:trim}</tr>{/dede:trim}
{dede:trim}<tbody([^>]*)>([^>]*)</tbody>{/dede:trim}
{dede:trim}<tbody>{/dede:trim}
{dede:trim}</tbody>{/dede:trim}
{dede:trim}<table([^>]*)>([^>]*)</table>{/dede:trim}
{dede:trim}<table([^>]*)>{/dede:trim}
{dede:trim}</table>{/dede:trim}
{dede:trim} {/dede:trim}
{dede:function}{/dede:function}
{/dede:note}
{dede:note field='dede_archives.source' value='[var:内容]' comment='文章来源'
isunit='' isdown=''}
{dede:match}{/dede:match}
{dede:function}@me ='互联网'{/dede:function}
{/dede:note}
{/dede:art}