第一部分:准备工作 (采集前必读)
在开始设置采集规则之前,请务必完成以下准备工作,这直接关系到你采集的成功率和效率。

(图片来源网络,侵删)
-
明确目标网站和版权问题:
- 版权:这是最重要的一点!采集他人内容有法律风险,请确保你有授权,或者采集的内容允许被转载(例如声明“本站内容来自网络,仅供试读,如侵犯您的权益,请联系我们删除”),很多小说网站会通过技术手段(如反爬虫、动态加载)来阻止采集,请尊重网站规则。
- 目标站点:选择一个结构清晰、广告少、更新稳定的目标网站,笔趣阁、起点中文网、纵横中文网等,笔趣阁类的站点结构通常比较简单,适合新手。
-
分析目标网站结构:
- 列表页:找到小说列表页的URL规律。
https://www.xxx.com/list/1.html,https://www.xxx.com/list/2.html。 - 内容页:分析单个章节页面的HTML结构,打开一个章节页面,使用浏览器的“开发者工具”(F12)查看:
- :通常在
<h1>、<h2>或某个<div>标签内。 - 章节正文:通常在
<div id="content">、<div class="read-content">等div标签内,注意观察正文是否被<p>标签包裹。 - 下一章链接:通常在
<a class="next">或<a>标签中包含“下一章”文字。
- :通常在
- 列表页:找到小说列表页的URL规律。
-
本地环境测试:
- 强烈建议:先在本地搭建一个DedeCMS测试环境进行采集,确认规则无误后再部署到正式网站,避免直接在正式网站上操作,可能导致数据混乱。
第二部分:创建采集节点(核心步骤)
登录DedeCMS后台,依次进入 “采集” -> “采集管理” -> “增加采集节点”。

(图片来源网络,侵删)
步骤1:填写节点基本信息
- 节点名称:给你的采集节点起一个名字,笔趣阁-玄幻小说”。
- 起始网址:填写你分析好的目标列表页URL。
- 列表页/内容页:选择“列表”。
- 目标目录:选择采集后小说存放的栏目,这个栏目必须是“文章模型”的栏目,如果还没有,请先在“栏目管理”中创建好。
- 作者/来源:选择“来源”,你可以选择一个固定的来源,笔趣阁”,或者设置为从页面抓取。
- 发布时间:选择“发布时间”,通常选择“从本地获取”,表示使用你采集时的时间,如果目标网站有时间,也可以尝试抓取。
- 简介:选择“简介”,你可以选择“截取正文前200字”作为简介,或者专门设置抓取页面中的简介部分。
步骤2:设置列表规则
这是告诉DedeCMS如何从列表页中找到所有章节的链接。
-
链接:
- 选择方式:通常选择“选择”。
- 链接目标:在右侧的源码区域,用鼠标选中列表页中每一个章节链接的
<a>标签,DedeCMS会自动填充代码,通常为class="listmain"或class="chapterlist"等,如果列表项有共同父级,可以先选中父级,再点击“选择”按钮下的“子链接”。 - 测试:点击“测试”按钮,如果能正确解析出章节列表,就说明成功了。
-
- 选择方式:选择“选择”。
- 标题目标:在源码中,选中章节标题所在的标签,通常是
<a>标签本身,DedeCMS会自动填充代码。
-
分页:
- 如果列表页有分页,需要在这里设置。
- 链接:选中分页按钮的
<a>- 目标:选中分页链接的
href属性值。- 设置页码:设置起始页码和终止页码,
1到100。 - 目标:选中分页链接的
步骤3:设置内容规则
这是最关键的一步,告诉DedeCMS如何从每个章节页面中提取标题、正文等信息。

(图片来源网络,侵删)
-
:
- 选择方式:选择“选择”。
- 标题目标:在章节页面源码中,选中章节标题所在的标签,通常是
<h1>或<div class="booktitle">。
-
:
- 选择方式:选择“选择”。
- 内容目标:在章节页面源码中,选中包含所有正文内容的
<div>标签,选中<div id="content">或<div class="content">。 - 过滤广告:这是难点,目标网站通常会在正文里插入广告,你需要仔细分析广告的HTML结构,然后在DedeCMS的“内容过滤”区域,使用正则表达式或直接输入广告代码来删除它们。
- 示例:如果广告是
<div class="ad">...</div>,就在过滤规则里输入<div class="ad">.*?</div>。 - 高级过滤:可以使用
strip_tags函数移除特定标签,如{dede:strip_tags}<script.*?</script>{/dede:strip_tags}。
- 示例:如果广告是
-
:
- 如果章节正文被分成了多个页面(点击“下一页”),必须在这里设置。
- 下一页链接:选中“下一页”按钮的
<a>- 循环采集:勾选此项,DedeCMS会自动循环点击“下一页”,直到没有下一页为止,然后将所有页面的内容合并成一篇。
-
发布选项:
- 是否自动审核:建议勾选“是”,直接发布,省去手动审核的麻烦。
- 是否采集图片:小说站通常不需要,可以不勾选。
- 是否远程图片:同上,不勾选。
步骤4:高级设置
- 自定义发布时间:可以设置一个随机的时间范围,让采集到的文章发布时间看起来更自然,避免所有文章都集中在同一分钟。
- 自定义文章ID:通常使用默认即可。
- Cookie:如果目标网站需要登录才能访问,你需要先登录目标网站,然后从浏览器中复制Cookie值,粘贴到这里。
第三部分:执行采集与维护
步骤5:执行采集
- 保存节点:完成所有规则设置后,点击“保存”按钮。
- 开始采集:在“采集管理”列表中找到你创建的节点,点击“开始采集”。
- 监控进度:系统会开始执行,你可以监控采集的进度和状态,如果出错,根据提示信息检查规则设置。
步骤6:后续维护
- 更新采集:当你有新的章节时,可以再次进入该节点,点击“更新采集”,它会自动采集新发布的内容。
- 规则失效:目标网站改版后,采集规则很可能会失效,你需要重新分析网站结构,并更新节点中的列表和内容规则。
- 数据去重:DedeCMS有自动去重机制,但偶尔也可能出现问题,定期检查文章列表,删除重复内容。
第四部分:高级技巧与注意事项
-
使用“模拟登陆”:
对于需要登录的网站,除了设置Cookie,还可以在节点的高级设置中开启“模拟登陆”,这需要你提供登录的用户名、密码和提交地址,这种方法比手动复制Cookie更稳定。
-
使用“正则表达式”进行高级过滤:
- 当简单的标签过滤无法满足需求时,可以使用正则表达式,要删除所有
<span>标签,可以使用{dede:pregex replace=''}<span.*?</span>{/dede:pregex}。 - 要删除包含特定文字(如“请记住本域名”)的段落,可以使用
{dede:pregex replace=''}<p.*?请记住本域名.*?</p>{/dede:pregex}。
- 当简单的标签过滤无法满足需求时,可以使用正则表达式,要删除所有
-
使用“自定义字段”:
如果你想采集更多信息,比如小说状态(连载/完结)、字数、标签等,可以在栏目模型中添加自定义字段,然后在内容规则中设置对应的抓取规则。
-
尊重网站
robots.txt:- 在采集前,检查目标网站的
robots.txt文件(https://www.xxx.com/robots.txt),了解他们禁止爬取的目录,遵守规则是良好的网络行为。
- 在采集前,检查目标网站的
-
采集速度:
不要设置过高的采集频率,过于频繁的请求可能会被目标网站封禁IP,可以适当降低采集速度。
创建一个Dede小说站采集规则,本质上是一个“分析 -> 配置 -> 测试 -> 执行”的过程,耐心和细心是成功的关键,特别是对目标网站HTML结构的分析,直接决定了采集规则的成败,建议多在测试环境中反复调试,确保规则完美后再用于正式站点。
