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

PHP
php 清除网页病毒的方法
php 远程关机操作的代码
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
PHP 出现乱码和Sessions验证问题的解决方法!
php2html php生成静态页函数
中英文字符串翻转函数
php escape URL编码
PHP Google的translate API代码
php 文件状态缓存带来的问题
linux下 C语言对 php 扩展
php mssql 数据库分页SQL语句
php IP及IP段进行访问限制的代码
PHP 采集程序 常用函数
php 设计模式之 单例模式
php 设计模式之 工厂模式
php xml-rpc远程调用
php 获取完整url地址
PHP MSSQL 存储过程的方法
PDP Document 代码注释规范
PHP HTML代码串截取代码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 270 ::
收藏到网摘: 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}