采集规则概述
织梦CMS(DedeCMS)是一款广泛使用的内容管理系统,其内置的采集功能允许用户从互联网上自动抓取数据并整合到自己的网站中,为了实现高效和准确的数据采集,织梦提供了灵活的采集规则设置,这些规则决定了系统如何识别和提取目标网页上的数据,包括文章列表、内容字段等。
采集节点管理
1、新增采集节点:在织梦后台点击“采集” > “采集节点管理”,然后选择“增加新节点”,填写节点名称,选择普通文章类型,并保存进入下一步。
2、基本信息设置:填写被采集站的基本信息,如编码和页面网址,通过查看源文件获取页面编码,通常可以在HTML头部找到。
3、文章列表获取:输入文章列表页网址,通过查看源文件确定列表开始和结束标志,并填写相应的匹配规则。
开始标志:<div id="list">
结束标志:</ul>
URL匹配规则:<li><a href="([^"]*)">([^<]*)</a></li>
4、字段获取规则:根据需要采集的字段,如标题、作者、发布时间、内容等,设置相应的正则表达式。
标题:<h1>([^<]*)</h1>
作者:<span class="author">([^<]*)</span>
发布时间:<span class="time">([^<]*)</span>
内容:<div class="content">([^<]*)</div>
5、过滤广告代码:在文章内容中,可以使用正则表达式过滤掉不需要的广告代码。<script[^>]*>([^<]*?)</script>
6、分页处理:如果被采集的文章列表支持分页,可以设置分页规则。
列表URL规则:http://www.example.com/list_([09]+).html
下一页相对路径:_self
7、测试配置:完成以上设置后,点击“保存设置并预览”,检查采集效果是否符合预期,如果无误,点击“开始采集”进行正式采集。
替换规则概述
替换规则主要用于对采集到的数据进行清洗和格式化,以满足网站发布的需求,织梦CMS提供了多种替换规则,包括字符串替换、正则表达式替换等。
常用替换规则示例
1、标题中空格的过滤中经常会出现多余的空格,可以使用以下正则表达式进行过滤:
{dede:trim} {$title} {/dede:trim}
2、来源作者中连接的过滤:如果来源或作者字段中包含链接,可以使用以下正则表达式去除链接:
{dede:trim} <a([^>]*)>([^<]*)</a> {/dede:trim}
3、中连接和其他广告代码的过滤:在文章内容中,可以使用以下正则表达式过滤掉不需要的广告代码和链接:
{dede:trim} <script[^>]*>([^<]*?)</script>|<iframe[^>]*>([^<]*?)</iframe> {/dede:trim}
4、特殊字符的替换:对于一些特殊字符,如空格、换行符等,可以使用以下正则表达式进行替换:
{dede:replace} (s+) {/dede:replace} // 替换多个连续空格为一个空格 {dede:replace} {br} {/dede:replace} // 将换行符替换为<br>标签
5、HTML标签的替换:对于一些不需要的HTML标签,可以使用以下正则表达式进行替换:
{dede:replace} </?(font|center|big|small|strike)[^>]*>([^<]*?)</1> {/dede:replace} // 替换<font>、<center>等标签
相关FAQs
1、Q1:如何设置织梦CMS的采集规则?
A1:设置织梦CMS的采集规则包括新增采集节点、填写基本信息、设置文章列表获取规则、字段获取规则、过滤广告代码、分页处理以及测试配置等步骤,具体操作可参考上述“采集节点管理”部分。
2、Q2:如何过滤掉标题中的空格?
A2:可以使用正则表达式{dede:trim} {$title} {/dede:trim}
来过滤掉标题中的空格。
3、Q3:如何去除来源或作者字段中的链接?
A3:可以使用正则表达式{dede:trim} <a([^>]*)>([^<]*)</a> {/dede:trim}
来去除来源或作者字段中的链接。
4、Q4:如何过滤掉文章内容中的广告代码?
A4:可以使用正则表达式{dede:trim} <script[^>]*>([^<]*?)</script>|<iframe[^>]*>([^<]*?)</iframe> {/dede:trim}
来过滤掉文章内容中的广告代码和链接。
5、Q5:如何替换特殊字符?
A5:可以使用正则表达式{dede:replace} (s+) {/dede:replace}
来替换多个连续空格为一个空格,使用`{dede:replace}
{br} {/dede:replace}`来将换行符替换为<br>标签。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1212856.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复