图解Dedecms网站后台文章采集功能的使用方法步骤
时间:2022-05-26 00:39:01 | 来源:网络营销
时间:2022-05-26 00:39:01 来源:网络营销
本篇文章是为了初次接触Dedecms采集功能的朋友所写的,所选取的目标站点为文章内容页面不含有分页的Dedecms官方网站的dreameaver栏目文章,通过图文并茂的形式,详细地介绍了如何创建一个基本的采集规则。
本文共分为三节:第一节,主要是介绍如何进入采集界面和新增采集节点中的第一步:设置基本信息及网址索引页规则;第二节,主要是介绍新增采集节点中的第二步:设置字段获取规则;第三节,主要是介绍如何采集指定节点和如何导出采集内容。
一、设置基本信息及网址索引页规则 下面我们先进入第一节,介绍如何进入采集界面和新增采集节点中的第一步:设置基本信息及网址索引页规则。
1、进入采集节点管理界面 如(图1)所示,在后台管理界面的主菜单中单击“采集”。
图1-后台管理界面
然后单击“采集节点管理”,即可进入采集节点管理界面,如(图2)所示。
图2-采集节点管理界面
2、增加新节点 在采集节点管理界面中,单击左下角的“增加新节点”或者右上角的“添加新节点”(如图2),都可进入“选择内容模型”界面,如(图3)所示,
图3-选择内容模型界面
在“选择内容模型”界面的下拉列表框中,有“普通文章”和“图片集”可供选择。根据被采集页面的类型,选择相应的内容模型。
本文这里选择“普通文章”,单击确定后,便可进入“新增采集节点:第一步设置基本信息及网址索引页规则”界面,如(图4)所示,
图4-新增采集节点:第一步设置基本信息及网址索引页规则
(1)、设置节点基本信息 图5-节点基本信息
如(图5)所示,节点名称:给新建立的节点起一个名字,这里填上“采集测试(一)”
目标页面编码:设定被采集目标页的编码格式,有GB2312、UTF8和BIG5三种。可通过在被采集目标页面上,单击右键后选择“查看源文件”来获取。
操作步骤:
(a)、打开被采集的目标页:http://www.mahaixiang.cn/CMS/226.html
(b)、单击右键后选择“查看源文件”,找到“charset”,如(图6)所示:
图6-查看源文件
其等号后面的代码就是所需的“编码格式”,这里是“gb2312”。
“区域匹配模式”:设定如何匹配所需采集的内容部分,可采用字符串或者正则表达式。系统默认的模式是字符串。如果比较了解正则表达式的朋友,可以在这里选择正则表达式的模式。
“内容导入顺序”:指定文章列表导入时候的顺序,可以选择“与目标站一致”或“与目标站相反”。
“防盗链模式”:针对被采集的目标站点有无刷新限制。一开始很难判断出来,需要测试后才能知道。如果有的话,这里需要设置一下“资源下载超时时间”。
“引用网址”:填入任何一个即将被采集的文章内容页面的网址。
具体操作步骤:
(a)、在已打开的文章列表页中,单击第一篇文章的
标题“在Dreamweaver中为插入的Flash添加透明”,以打开文章内容页面,如(图7)所示,
图7-文章内容页面
(b)、此时在浏览器的URL地址栏中显示的网址,即为需要填写在“引用网址”处的网址,如(图8)所示,
图8-浏览器的URL地址栏
到这里,“节点基本信息”就设置完成了。
最后结果,如(图9)所示:
图9-设置后的节点基本信息
检查无误后,进入下一步设置。
(2)、设置列表网址获取规则 如(图10)所示:
图10-列表网址获取规则
这里是设置被采集的文章列表页的匹配规则。如果被采集的文章列表页有一定的规律,可选择“批量生成列表网址”;如果被采集的文章列表页完全没有规律可循,那么可选择“手工指定列表网址”;如果被采集的站点提供了RSS,则可以选择“从RSS中获取”。
对于特殊情况,例如:部分列表页有规律,而其余的又没有规律,则可在“匹配网址”中填上有规律的部分,然后把没有规律的部分填写在“手动指定网址”。
具体操作步骤:
(a)、首先,回到已打开的文章列表页,找到浏览器的URL地址栏中显示的网址(图8)和页面底部的换页部分。如(图11)所示,
图11-换页
(b)、单击“2”,打开文章列表页的第二页,此时浏览器的URL地址栏中所显示的网址和页面底部的换页部分,如(图12)和(图13)所示,
图12-第二页的网址
图13-第二页的换页部分
(c)、在已打开的文章列表页的第二页上面,单击(1),打开文章列表页的首页,这时页面底部的换页部分与图11相同,而浏览器的URL地址栏中所显示的网址与之前图8并不相同,如(图14)所示:
图14-第一页的网址
(d)、由(b)和(c)推知,此处被采集的文章列表页的网址所遵循规律为:http://www.xxxxx.com/knowledge/web-based/dreamweaver/list_47_(*).html。稳妥起见,请自行测试更多列表页。确定规律后,在“匹配网址”中,填入文章列表页所遵循的规律。
(e)、最后,指定需要采集的页码或者规律数字,并设定其递增规律。
到这里,“列表网址获取规则”部分就设置结束了。最后结果,如(图15)所示:
图15-设置后的列表网址获取规则
确定正确后,进入下一步设置。
(3)、设置文章网址匹配规则 如(图16)所示:
图16-文章网址匹配规则
这里是设置被采集文章列表页的匹配规则。
具体操作步骤:
(a)、对于“区域开始的HTML”,可通过在打开的文章列表首页上,单击右键后选择“查看源文件”。在源文件中,找到第一篇文章的标题“在Dreamweaver中为插入的Flash添加透明”,如(图17)所示:
图17-查看源文件中,第一篇文章的标题
通过观察,不难看出“<div class=“arc_list”>”为整个文章列表的开始部分。因此,在“区域开始的HTML”中,填入”<div class=“arc_list”>”。
(b)、在源文件中,找到最后一篇文章标题“通过Dreamweaver设计网页时组织CSS的建议”,如(图18)所示:
图18-查看源文件中,最后一篇文章的标题
结合文章列表的开始部分并通过观察可知,第一个“</div>”为整个文章列表的结束部分。因此,在“区域结束的HTML”中,应填入”</div>”。
“如果链接中含有图片”:设置对链接中含有图片的处理方式,有不处理和采集为缩略图可选。可根据实际需要选择。
“对区域网址进行再次筛选”:可以使用正则表达式对区域网站进行再次筛选,这是针对一些需要被保留或者需要滤掉的内容,尤其是混编的列表页面,通过使用“必须包含”或者“不能包含”过滤掉所希望获取或者不希望获取的文章内容页面的网址。
具体操作步骤:
回到正在打开的文章列表首页的源文件,通过观察可知,每一个文章内容页面地址的扩展名均为.html。因此,可在“必须包含”中,填入“.html”。
到这里,“文章网址匹配规则“就设置结束了。最后结果, 如(图19)所示,
图19-设置后的文章网址匹配规则
通过1.2.1小节、1.2.2小节和1.2.3小节,新增采集节点的第一步就已经设置完成了。设置后的结果,如(图20)所示:
图20-设置后的新增采集节点:第一步设置基本信息及网址索引页规则
全部完成并检查无误后,单击“保存信息并进入下一步设置“。如果之前设置正确,单击后,将会进入“新增采集节点:测试基本信息及网址索引页规则设置的网址获取规则测试”页面并看到相应的文章列表地址。如(图21)所示,
图21-网址获取规则测试
确定正确无误后,单击“保存信息并进入下一步设置”。
否则,请单击“返回上一步进行修改“。
二、设置字段获取规则 接下来,我将会对新增采集节点中的第二步:“设置字段获取规则”做详细的说明。为了与前文保持一致,本文将延续使用前文的章节标记。
1、新增采集节点:第二步设置内容字段获取规则 单击“保存信息并进入下一步设置”后,便可进入“新增采集节点:第二步设置内容字段获取规则”页面,如(图22)所示,
图22-设置内容字段获取规则
在预览网址处,系统将会自动指定一篇将被采集文章内容页面的网址(一般为所采集列表页面的第一篇文章网址),作为示范页面。如果文章内容页面含有分页,则需设置“内容分页导航所在的区域匹配规则”。
对于“固定采集项目”中的“内容摘要、关键字和缩略图“三个部分,系统会用正则进行自动匹配,这里仅需配置过滤内容即可。下面主要介绍如何获取“文章标题、文章作者、文章来源、发布时间和文章内容”的采集规则,过滤规则仅简单涉及。
2、获取文章标题的采集规则 首先,打开“预览网址“的页面并单击右键,选择”查看源代码“,找到文章标题” 在Dreamweaver中为插入的Flash添加透明“,如(图23)所示,
图23-在源代码中的文章标题
这里的文章标题处在“<h1></h1>”之间,由于在此页面中多次出现这组标签,因此这里应该填写“<div class=”arcbody”><h1>[内容]</h1>”作为文章标题的匹配规则。如果在文章标题中含有相关链接等,可使用过滤规则加以处理,这里无需设置。填写后,如图24所示,
图24-文章标题的采集规则
3、获取文章作者的采集规则 如上图23所示,在“作者:”二字后面有一组标签“<font color=”red”></font>”,以此猜测,作者名将会写在这组标签之间。同样,为了保持唯一性,这里应填写”作者:<font color=“red”>[内容]</font>“作为文章作者的采集规则。
谨慎起见,请根据文章列表中其他文章内容页面查证此采集规则是否正确。这里不需要使用过滤规则。填写后,如图25所示,
图25-文章作者的采集规则
4、获取文章来源的采集规则 在上图23中,可发现“来源:”二字后面有一组标签“<font color=”red”></font>”,以此猜测,来源内容将会写在这组标签之间。与2.1.2处理方式相同,为了保持唯一性,文章来源的采集规则应为“来源:<font color=“red”>[内容]</font>“。同样,这里也不需要使用过滤规则。填写后,如图26所示,
图26-文章来源的采集规则
5、获取文章发布时间的采集规则 再次回到图23,找到“发表于:”及其后的“<font color=”red”>2009-09-29 14:21</font>”,与之前获取采集规则方法相同,此处应把“发表于: <font color=”red”>[内容]</font>”作为发布时间的采集规则。同样,这里也不需要使用过滤规则。填写后,如图27所示,
图27-文章发布时间的采集规则
6、获取文章内容的采集规则 这个部分是编写采集规则的重点,也是难点。需要特别注意。
具体操作步骤:
(a)、回到正在打开的文章内容页面的源代码,找到文章内容的开始部分“Dreamweaver升级到8.0.2后”,如图28所示,
图28-文章内容的开始部分
注意:在源代码中,有两处都出现了这句话。其中,第一句在“<div class=”intro”>”之后,第二句在“<div class=”content”><p>”之后。通过对比文章内容页面及其源代码,不难发现,第一处实为摘要,第二处才为文章内容的开始部分。因此,应选取“<div class=”content”>”为匹配规则的开始部分。
(b)、找到文章内容的结束部分“同样是添加值为“transparent”的“wmode”参数。”,如图29所示,
图29-文章内容的结束部分
注意:由于结束部分的最后标签为”</p>”,而此标签在文章内容中多次出现。因此,不能作为采集规则的结束标签。考虑到应与文章内容的开始部分相对应,经对比和分析后得出,此处应选取“</div>”作为文章内容的结束部分,如图30所示:
图30-文章内容匹配规则的结束部分
(c)、综合(a)和(b)可知,此处文章内容的匹配规则应为“<div class=”content”>[内容]</div>”,填写后,如图31所示,
图31-文章内容的匹配规则
这里占时不使用过滤规则,关于过滤规则的介绍和使用,将会放在单独的章节中。
到这里,“新增采集节点:第二步设置内容字段获取规则”,就设置完成了。填写后,如(图32)所示,
图32-设置后的新增采集节点:第二步设置内容字段获取规则
检查无误后,单击“保存配置并预览”。如果之前设置正确,单击后,将会进入“新增采集节点:测试内容字段设置”页面并看到相应的文章内容。如(图33)所示,
图33-新增采集节点:测试内容字段设置
确定正确无误后,如果单击“仅保存”,系统将会提示“成功保存配置“并返回”采集节点管理“界面;如果单击“保存并开始采集“,将会进入”采集指定节点“界面。
否则,请单击“返回上一步进行修改”。
三、如何采集指定节点和如何导出采集内容 在前两节的基础上,将会对“如何采集指定节点”和“如何导出采集内容”做详细的说明,为了与前文保持一致,将延续使用前文的章节标记,继续来讲讲如何采集指定节点和如何导出采集内容。
1、采集指定节点 单击“保存并开始采集“后,将会进入”采集指定节点“界面,如(图34)所示,
图34-采集指定节点
每页采集:设置每页所需采集的条数,并可根据网站是否有防刷新功能,设置采集间隔时间。
特殊选项:设置是否检测重复图片,默认为“检测”。
附加选项:此选项一共有3种采集模式可供选择:
第一种为“监控采集模式(检测当前或所有节点是否有新内容)”,选取后,系统只会采集指定节点中更新的内容。
第二种为“重新下载全部内容”,选取后,系统会采集指定节点中的全部内容。
第三种为“下载种子网站的未下载内容”,选取后,系统只会采集指定节点中未下载过的内容,包括以前没下载的和更新的内容。
设置完成并确定无误后,可单击“开始采集网页”或者“查看种子网址”。此时,如果单击“查看种子网址”会看到列表是空的,这是因为新建立的采集节点从未采集过,如(图35)所示:
图35-查看节点的种子网址
单击“开始采集网页”后,系统便会开始采集节点中设置的网址,并出现相关提示,如(图36)所示:
图36-采集进程中提示信息
采集结束后,再次单击“查看种子网址”或者单击页面右上角的“查看已下载”,便可看到已采集到的网址信息,如(图37)所示:
图37-查看节点的种子网址
2、导出采集内容 成功采集以后,可以根据实际需要选择页面右上角的单击“采集节点管理”或者“导出数据”。单击“导出数据“后,便可进入” 采集管理> 采集内容导出“界面,如(图38)所示:
图38-采集内容导出
“默认导出栏目“:设置要把采集到的内容导入到的栏目
“批量采集选项”:如果在采集规则中已指定栏目ID,则可使用此功能,若指定的栏目ID为0,系统会把采集内容导入到“默认导出栏目”所选择的栏目中。
“发布选项“:有发布成“普通文档”和“保存为草稿”可供选择。
“每批导入“:设置每批导入的条数,此数不宜过大。
“附带选项“:此处为多选。如果不希望采集到重复的文章标题,可选中“排除重复标题”;如果希望被采集到的内容直接生成HTML的话,可选中“完成后自动生成导入内容HTML”;如果希望系统在采集列表页时自动识别标题名,可选中“使用列表索引的标题”,一般不建议勾选。
“随机推荐”:填入一个数字,代表文档篇数。在所填入的文档篇数内随机出现一篇推荐文档,若填入“0”,则表示为不推荐。
设置完成后,可单击“确定”,就可以把下载的导入到所选的栏目中了,如(图39)所示,
图39-设置完成后的采集内容导出页面
同时,系统将会有导出进程提示,如(图40)所示:
图40-采集内容导出中的提示信息
导出采集内容提示“完成所有栏目列表更新”后,单击“浏览栏目”,便可进入网站的相关页面查看到采集到的文章列表及其具体内容。也可在后台管理界面的主菜单中单击“核心”,然后单击“普通文章”,进入“文档列表”页面,查看所采集到的文章列表,如(图41)所示:
图41-文档列表
到此为止,已成功采集到了目标网站的文章内容。
总结,采集“不含分页的普通文章”还是相对比较简单的,由于本篇文章是一篇基础教程,因此并没有过多的涉及到“过滤规则”。
附上本文的采集规则: {dede:listconfig}
{dede:noteinfo notename="采集测试(一)" channelid="1" macthtype="string"
refurl="http://www.dedecms.com/knowledge/web-based/dreamweaver/2009/0929/765.html" sourcelang="gb2312" cosort="asc" isref="no" exptime="10" usemore="0" /}
{dede:listrule sourcetype="batch" rssurl="http://" regxurl="http://www.dedecms.com/knowledge/web-based/dreamweaver/list_47_(*).html"
startid="1" endid="1" addv="1" urlrule="area"
musthas=".html" nothas="" listpic="1" usemore="0"}
{dede:addurls}{/dede:addurls}
{dede:batchrule}{/dede:batchrule}
{dede:regxrule}{/dede:regxrule}
{dede:areastart}<div class="arc_list">{/dede:areastart}
{dede:areaend}</div>{/dede:areaend}
{/dede:listrule}
{/dede:listconfig}
{dede:itemconfig}
{dede:sppage sptype='full' sptype='full' srul='1' erul='5'}{/dede:sppage}
{dede:previewurl}http://www.dedecms.com/knowledge/web-based/dreamweaver/2009/0929/765.html{/dede:previewurl}
{dede:keywordtrim}{/dede:keywordtrim}
{dede:descriptiontrim}{/dede:descriptiontrim}
{dede:item field='title' value='' isunit='' isdown=''}
{dede:match}<div class="arcbody"><h1>[内容]</h1>{/dede:match}
{dede:function}{/dede:function}
{/dede:item}
{dede:item field='writer' value='' isunit='' isdown=''}
{dede:match}作者:<font color="red">[内容]</font>{/dede:match}
{dede:function}{/dede:function}
{/dede:item}
{dede:item field='source' value='' isunit='' isdown=''}
{dede:match}来源:<font color="red">[内容]</font>{/dede:match}
{dede:function}{/dede:function}
{/dede:item}
{dede:item field='pubdate' value='' isunit='' isdown=''}
{dede:match}发表于:<font color="red">[内容]</font>{/dede:match}
{dede:function}@me=GetMkTime(@me);{/dede:function}
{/dede:item}
{dede:item field='body' value='' isunit='1' isdown='1'}
{dede:match}<div class="content">[内容]</div>{/dede:match}
{dede:function}{/dede:function}
{/dede:item}
{/dede:itemconfig}
注:以上采集规则仅供参考,细节问题需自己调整!
亿企邦点评: 一个网站的文章老是采集,确实对网站的排名伤害非常的大,这会严重影响文章的稀缺性,如果资源丰富,最好还是自己原创或者伪原创,只是采集的网站很难有大的作为,采集需谨慎,K站很严重!
另外,每个采集器都有它的独特之处,所谓存在即合理,请根据自己的需求来选择即可!