Board logo

标题: 极速建站:DEDECMS采集规则写作简明教程 [打印本页]

作者: TMD    时间: 2009-8-18 00:34     标题: 极速建站:DEDECMS采集规则写作简明教程

DedeCms采集规则写作教程  

由于截图背景白色,这样可能分不清楚截图和文字分不清楚,因此用粉色背景来区分。

第一步、确定采集的网站(我们以DEDE的官方站做为采集站做示范)

http://www.dedecms.com/plus/list.php?tid=10
第二步、确定被采集站的编码。打开被采集的网页之后,查看源代码(IE:查看 - > 源代码)
[attach]805[/attach]
[attach]806[/attach]
在<head> </head>之间找到 charset 这个,后面就显示网页的编码了,截图的是 “gb2312”

第三步、采集列表获取规则写法 浙江站长站

来源网址写法 很明显pageno是表示分页页码 那么有多页列表的采集就要用“[var:分页]”来替换分页页码,截图如下
[attach]807[/attach]
[attach]808[/attach]
文章网址需包含 网址不能包含 这两个一般不用写,用于采集列表范围有很多不需要的连接才用到他来做过滤使用。  

上面的网址并没有带有至于http://www.dedecms.com 为什么要在前面加上,这个就不要我说了吧。  

如果只有一个列表页,那么在来源网址就直接写上网址就OK了。
[attach]809[/attach]
[attach]810[/attach]
注意这里,最关键就是这里。

下面就是“采集获取文章列表的规则写法”,  

就是上面打开的被采集页面的源代码文件,找到文章列表之前 和本页面没有其他相同的代码  

在DedeCms官方站的列表页文章列表之前和之后最近的且没有相同的是“<div class="newslist">”和“<div class="pages">”,分别写入“起始HTML”和“结束HTML”,写法看截图
[attach]811[/attach]
第四步、采集文章标题,文章内容,文章作者,文章来源等规则写法,分页采集等。
“起始HTML”和“结束HTML”写法参考第三步中的“获取文章列表的规则写法”
[attach]812[/attach]
[attach]813[/attach]
下面讲的是如何采集分页内容 看截图圈着的地方 截图

文档是否分页 里面选择“全部列出的分页列表”

“起始HTML”和“结束HTML”写法参考第三步中的“获取文章列表的规则写法”
[attach]814[/attach]
[attach]815[/attach]
这里本来还有一张截图的,由于论坛配置,他现在显示在最上面.

在文章内容那里点上“分页内容字段”,不选择就不能采集。

“下载字段里的多媒体资源 ”这个是采集的时候把多媒体资源(视频,软件,图片等)下载到本地,也就是你的网站。



下面是过滤规则  

过滤规则需要用 “正则表达式”来写,但是对于新手来说,这个简直是比登天还要难,具体的可以参考  

http://www.dedecms.com/web-art/PHP_jiaocheng/20070420/38633.html这个网页  

下面教大家一个简单的方法



把下面的过滤规则复制到你那里去,几乎就可以了,也可以自己分析一下,说不定你就懂了

{dede:trim}<span(.*)>{/dede:trim}


{dede:trim}</span>{/dede:trim}  

{dede:trim}<div(.*)>{/dede:trim}  

{dede:trim}</div>{/dede:trim}   

{dede:trim}<li>{/dede:trim}


{dede:trim}</li>{/dede:trim}


{dede:trim}<ul>{/dede:trim}


{dede:trim}</ul>{/dede:trim}  

{dede:trim}<font(.*)>{/dede:trim}  

{dede:trim}</font>{/dede:trim}  

{dede:trim}<table(.*)>{/dede:trim}


{dede:trim}</table>{/dede:trim}  


{dede:trim}<tbody(.*)>{/dede:trim}  

{dede:trim}</tbody>{/dede:trim}


{dede:trim}<tr(.*)>{/dede:trim}


{dede:trim}</tr>{/dede:trim}

{dede:trim}<td(.*)>{/dede:trim}


{dede:trim}</td>{/dede:trim}



{dede:trim}<a(.*)>{/dede:trim}  

{dede:trim}</a>{/dede:trim}


{dede:trim}<iframe(.*)</iframe>{/dede:trim}  

{dede:trim}<style(.*)</style>{/dede:trim}


{dede:trim}<script(.*)</script>{/dede:trim}  

{dede:trim}<option(.*)</option>{/dede:trim}

{dede:trim}<select(.*)</select>{/dede:trim}


{dede:trim}<embed(.*)>{/dede:trim}

{dede:trim}</embed>{/dede:trim}  

{dede:trim}<param(.*)</param>{/dede:trim}  

{dede:trim}<object(.*)</object>{/dede:trim}   

当然 上面这些不能用来采集带有视频的,因为已经过滤了,后面的四行是过滤掉视频的。

自定义处理接口

这个说白了,就是PHP代码。只不过 “ @ me 表示当前标记值和最终结果“@ body表示原始网页”“ @ litpic 缩略图”,按照PHP的写法的就OK了,要不懂PHP的话这个我也帮不了你,你可以去慢慢学习。




欢迎光临 0937 - 免费吧资源交流论坛 (http://tmd.pw/) Powered by Discuz! 7.2