篇一: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
转载请保留,谢谢!