您的位置:百味书屋 > 范文大全 > 经典范文 > 织梦DedeCms采集规则教程 正文

织梦DedeCms采集规则教程

2017-01-18 06:15:54 来源网站: 百味书屋

篇一:DEDECMS完整采集教程(共三篇)

DEDECMS完整采集教程(列表设置篇)-marco608原创

以的html教程中的数据库为例,地址是

/web-art/htmlbase/HTML/index.html

一,打开dedecms,进入【采集节点管理】,新建一个节点,模型我们就选择

------------------------------------- http://hi.baidu.com/4410828 ----------------------------------------

二,填写节点的基本信息:

名称就自己定义吧。

编码就比较重要,大家可以在页面点击右键来看该页面的编码。

来源就自己定义吧。

防盗链就看目标站点的有无刷新限制,有就设置一下超时时间。

------------------------------------- http://hi.baidu.com/4410828 ----------------------------------------

三,设置采集列表:

我们要采集的列表是这样的:

而我们要设置的列表是这样的:

下面我们来说明一下这个设置是怎么填的。

来源网址很重要的。列表的获取就是从这里得到的。

自己打开:/web-art/htmlbase/HTML/list_33_2.html 看看分页的规律。不难看出吧?

然后我们在设置列表分页时,就转换为变量值的形式:

/web-art/htmlbase/HTML/list_33_[var:分页] .html

而变量起始值是1,结束值是3,就代表1至3的列表页了。

正则配置网址就看本身是否有比较特定的文章网址字符。例如page1.html之类的。

下面的html范围就比较重要。

我们看原dede的列表。我们在浏览器里查看源文件。

查找以下代码:

看到这里,你一定要认识常用的html代码。

这里要复制代码起始就是那个文章列表的表格的开始部分吧。

下面就是文章列表的表格的结束部分的代码:

篇二:DeDeCMS5.7详细采集教程

DeDeCMS织梦的采集教程,超级详细

超级详尽的织梦采集教程

看到很多网友都为织梦(DEDE CMS)的采集教程头疼,的确,官方出的教程太笼统了,什么都没说,换个网站你什么都做不了,这个教程是最详尽的教程,让你一看即会 首先我们打开织梦后台点击 采集——采集节点管理——增加新节点

这里我们以采集普通文章为例,我们选择普通文章,然后确定

我们进入了采集的设置页面,填写节点名称,就是给这个新节点取个名字,这里你可以任意填写。

一、设置文章列表页面

然后打开你想要采集的文章列表页,这里我们以织梦官网为例

/web-manage/jianzhanxinde/ 打开这个页面,右键——查看源文件

找到目标页面编码,就在charset后面

页面基本信息其他的一般就不用管了,填完了如图

现在我们来填写列表网址获取规则 看看文章列表第一页的地址

/web-manage/jianzhanxinde/list_49_1.html

对比第二页的地址/web-manage/jianzhanxinde/list_49_2.html 我们发现了他们除了49_后面的数字不一样,其他的都一样,所以我们可以这样写 /web-manage/jianzhanxinde/list_49_(*).html 就是把1换成了(*) 因为这里只有2页,所以我们就填从1到2 每页递增当然是1了,2-1...是等于1吧

这里我们就填写完了

-------------------------------------------------------------------------------------------------------------

没有规则的路径,需要手动设定

可能大家采集的有些列表没有规则,那就只有手工指定列表网址了,如图

每行写一个页面地址

--------------------------------------------------------------------------------------------------------------

列表规则写完了,我们就开始写文章网址匹配规则了,回到文章列表页 右键查看源文件 找到区域开始的HTML,就是找文章列表开始的标志。

我们很容易的找到了如图中的“新闻列表” 。从这里开始,后面就是文章列表里 我们再找文章列表结束的HTML

就是这个了,一个很容易找到的标志

如果链接中含有图片:

不处理 采集为缩略图 这里根据自己的需要选择

对区域网址进行再次筛选: (使用正则表达式)

必须包含: (优先级高于后者)

不能包含:

打开源文件,我们可以很清楚的看到,文章链接都是以.html结束的

所以,我们在必须包含后面填.html 如果遇到有些列表很麻烦,还可以填写后面的不能包含

实例如图

二、设置文章内容采集

我们点击保存设置进入下一步,可以看到我们获得的文章网址

看到这些就是对的了,我们保存信息进入下一步设置内容字段获取规则

我们看看文章有没有分页,随便进入一篇文章看看。。我们看到这里的文章没有分页 所以这里的我们就默认了

我们现在来找文章标题等等 随便进入一篇文章,右键查看源文件 看看这些

依照源码填写

我们再来填写文章内容的开始,结束 和上面的一样,找到开始和结束标志

篇三:dedecms采集规则

dedecms采集规则 dedeCMS采集规则,过滤,替换文章内的部分内容

1.采集去除链接

[Copy to clipboard]CODE:

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

--------------------------------

让field:title 标题突破30这个长度,修改代码的方法

找到./include/inc_arcpart_view.php

行291 :

if($titlelen=="") $titlelen = 30;

修改为

if($titlelen=="") $titlelen = 60;

就可以了,然后,你可以这样调用了

{dede:channelArtlist typeid='0' col=1 tablewidth='100%'}

{dede:arclist row="10"}

[field:title function="cn_substr('@me',38)" /]

{/dede:arclist}

{/dede:channelArtlist}

把这个延伸一下:关于inc_arcpart_view.php

function GetArcList($typeid=0,$row=10,$col=1,$titlelen=30,$infolen=160,

$imgwidth=120,$imgheight=90,$listtype="all",$orderby="default",$keyword="", $innertext="",$tablewidth="100",$arcid=0,$idlist="")

这里的参数都可以更改你实际需要的模板元素尺寸大小.

2. 采集过虑中去掉链接保留文字的方法!

柏老大的方法是{dede:trim}<a ([^>]*)>([^<]*)</a>{/dede:trim}

这样做会去掉<a hf.......>与</a>之间的字符!这样整个文章就少了部分字符,不完整了!

后来我多次测试,总算找到了正确的使用方法!如下:

{dede:trim}<a([^>]*)>{/dede:trim}

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

做成两条采集规则就可以了!

在实际使用中好像([^<]*)([^>]*)两条一起使用才行!

3. 过滤div

{dede:trim}]*)>{/dede:trim}

{dede:trim}

{/dede:trim}

过滤js

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

过滤未知变量字符

固定(.*)固定

4.dede万能过滤代码

以下是常用的正则表达式标签

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

以下为不常用的正则表达式标签

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

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

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

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

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

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

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

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

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

/////////////////////////////////////

5.织梦标题不全,鼠标指向显示全部的代码:

{dede:arclist titlelen='100'}

[field:title function=' ( strlen("@me")>40 ? cn_substr("@me",40): "@me" ) '/]

{/dede:arclist}

6.dede/inc/inc_archives_functions.php第100行(flash频道远程flash本地化的BUG) $cfg_uploaddir = $GLOBALS['media_dir'];

修改成

$cfg_uploaddir = $GLOBALS['cfg_other_medias'];

6.发布时间,来源,作者可以通过@me函数实现,如:在自定义处理接口:处输入 @me = "Azure·【博】" 就表示来源为“Azure·【博】”

7.内容的替换:在所采集的文章内容中有多媒体,使用的是相对路径,采集的时候又不想下

载,最好的办法就是将地址替换成媒体的实际地址。可以这样实现,在文章内容规则部分的自定义处理接口:处输入@me=str_replace('src="str1','src="str2',@me);

这样采集出来的文章中的所有的str1就被替换成str2!


织梦DedeCms采集规则教程》出自:百味书屋
链接地址:http://www.850500.com/news/71912.html
转载请保留,谢谢!
查看更多相关内容>>织梦DedeCms采集规则教程
相关文章
  • 织梦DedeCms采集规则教程

    DEDECMS完整采集教程(共三篇)DEDECMS完整采集教程(列表设置篇)-marco608原创以的html教程中的数据库为例,地址是 web-art htmlbase HTML index html一,打开dedecms,进入...