使用DedeCMS自带的“采集”功能(最推荐、最灵活)
这是DedeCMS最强大、最核心的功能之一,虽然名字叫“采集”,但它同样是批量导入外部数据的利器,它不仅能从其他网站采集,也能处理本地整理好的HTML或TXT文件。

(图片来源网络,侵删)
适用场景:
- 已经整理成独立的HTML文件或TXT文件。
- 需要从一个或多个网页上抓取内容。
- 进行复杂的规则匹配和提取。
操作步骤:
-
准备工作:整理源文件
- 如果是HTML文件: 确保每个HTML文件都包含文章标题、内容等核心信息,最好为每个文件命名一个有规律的文件名,
html,html或.html。 - 如果是TXT文件: 文件内容可以是纯文本,也可以是包含特定标记的文本,可以用 分隔标题和内容:
这是文章标题 --- 这是文章正文内容,第一段... 这是文章正文内容,第二段...
- 如果是HTML文件: 确保每个HTML文件都包含文章标题、内容等核心信息,最好为每个文件命名一个有规律的文件名,
-
在DedeCMS后台创建“采集节点”
- 登录DedeCMS后台,点击顶部菜单的 “采集” -> “采集节点管理”。
- 点击 “增加新节点”。
-
配置节点信息
- 节点名称: 给这个采集任务起个名字,方便识别,如“本地HTML导入”。
- 起始网址: 这里填写您存放源文件的本地文件夹路径! 格式为
file:///+ 绝对路径。- Windows示例:
file:///D:/dede/import_articles/ - Linux示例:
file:///home/wwwroot/dede/import_articles/ - 注意: 这个路径必须是您的网站服务器上可访问的绝对路径,文件夹(如
import_articles)需要提前创建好,并将所有要导入的HTML/TXT文件放进去。
- Windows示例:
- 列表规则/内容列表:
- 列表链接: 选择“文件链接”。
- 链接HTML: 填写
{file},这是一个占位符,代表遍历文件夹下的每一个文件。 - 分页: 选择“无分页”。
- 内容规则:
- 选择“提取正文”。
- HTML代码: 如果你的HTML文件标题在
<h1>标签里,就填写<h1>(.*?)</h1>,如果是TXT文件,并且用 分隔,可以填写 ,这里需要根据你的文件格式编写正则表达式,对于简单的TXT,可以直接使用“使用默认”或手动指定。
- 选择“提取正文”。
- HTML代码: 如果是HTML文件,填写
<body>(.*?)</body>来提取body标签内的所有内容,如果是TXT文件,填写 来提取 之后的所有内容。
- 发布栏目: 选择一个或多个目标栏目,如果文章来自不同栏目,这个方法会比较麻烦,需要为每个栏目单独创建节点。
- 发布时间: 选择“使用默认”或“使用文件修改时间”。
- 来源: 可以设置为固定值,如“本站原创”。
- 作者: 可以设置为固定值,如“管理员”。
- 缩略图: 如果HTML中有图片,可以配置规则自动提取,也可以留空,后续手动处理。
- tags: 可以留空,或设置一个固定的标签。
-
保存并测试
- 填写完规则后,点击“保存”。
- 在节点列表中找到你刚创建的节点,点击后面的 “选择” 或 “采集” 按钮。
- 在接下来的页面中,先点击 “选择” 按钮,系统会列出文件夹中所有匹配的文件,检查列表是否正确。
- 确认无误后,点击 “开始采集”,系统就会自动读取文件,并根据你设定的规则提取内容,并发布到指定的栏目中。
优点:
- 功能强大: 支持复杂的HTML解析和正则表达式。
- 自动化高: 一旦规则设定好,可以批量处理大量文件。
- 官方支持: 最原生、最稳定的方法。
缺点:
- 学习成本: 需要了解基本的正则表达式才能应对复杂的文件格式。
- 对文件格式有要求: 需要源文件结构相对规整。
使用Excel/CSV + 数据库导入(适合结构化数据)
如果你的文章信息(标题、内容、栏目、作者等)已经整理在Excel或CSV表格中,这种方法最快。
适用场景:
- 拥有现成的Excel/CSV表格,包含文章的所有元数据和内容。
- 需要精确控制文章的每一个字段,如自定义字段。
操作步骤:
-
准备工作:整理Excel表格
- 创建一个Excel文件,列名必须与DedeCMS数据库表
dede_archives(主表) 和dede_addonarticle(文章附加表) 的字段名相对应。 - 核心必填字段:
title: 文章标题typeid: 栏目ID (需要提前知道目标栏目的ID)senddate: 发布时间 (可以用时间戳或YYYY-MM-DD HH:MM:SS格式)body: 文章内容 (直接粘贴HTML或纯文本)
- 可选字段:
arcrank: 审核状态 (0为审核通过,-1为待审核)click: 点击量source: 来源writer: 作者litpic: 缩略图URL
- 将Excel文件另存为 *CSV (逗号分隔)(.csv)** 格式。
- 创建一个Excel文件,列名必须与DedeCMS数据库表
-
准备SQL语句
- 这是最关键的一步,你需要将CSV文件的数据通过
LOAD DATA INFILE命令导入数据库。 - 你需要知道你的数据表前缀(通常是
dede_)。 - 编写SQL语句,这是一个示例:
-- 注意:请根据你的实际情况修改以下变量 SET @table_prefix = 'dede_'; SET @csv_file_path = '/home/wwwroot/dede/import_articles.csv'; -- CSV文件在服务器上的绝对路径 SET @target_typeid = 15; -- 目标栏目的ID LOAD DATA INFILE '@csv_file_path' INTO TABLE `@table_prefixarchives` FIELDS TERMINATED BY ',' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\r\n' IGNORE 1 LINES -- 忽略CSV文件的第一行(标题行) @senddate, `click`, `source`, `writer`, litpic, `arcrank`) SET typeid = @target_typeid, senddate = STR_TO_DATE(@senddate, '%Y-%m-%d %H:%i:%s'); -- 接下来导入文章内容到附加表 -- 假设你的CSV文件里有一个叫 'body' 的列,并且与主表按顺序一一对应 -- 这个过程比较复杂,通常需要写脚本或分步进行,因为主表和附加表是关联的。
- 注意: 直接操作数据库风险很高,
LOAD DATA INFILE语法非常严格,路径、字段、格式都不能错,而且这个例子只导入了主表,文章内容(body)在dede_addonarticle表里,需要另一条关联的SQL语句,操作非常复杂。
- 这是最关键的一步,你需要将CSV文件的数据通过
-
执行导入
- 登录你的数据库管理工具(如phpMyAdmin)。
- 选择DedeCMS对应的数据库。
- 点击“SQL”选项卡,将上面编写好的SQL语句粘贴进去执行。
优点:
- 处理速度快: 对于大量结构化数据,导入速度极快。
- 字段控制精确: 可以完美控制数据库的每一个字段。
缺点:
- 技术门槛高: 需要懂SQL和数据库结构,操作不当有数据丢失风险。
- 过程复杂: 尤其是处理文章内容到附加表时,逻辑比较绕。
- 不推荐新手使用。
使用第三方批量导入插件(最简单、适合新手)
网上有很多开发者制作的DedeCMS批量导入插件,它们通常提供图形化界面,简化了导入过程。
适用场景:
- 不想学习复杂的采集规则或SQL语句。
- 源文件是Word、TXT等常见格式。
- 追求操作简便。
操作步骤:
- 寻找插件: 在DedeCMS官方论坛、资源站或搜索引擎搜索“DedeCMS 批量导入插件”、“DedeCMS 批量发文章”等关键词。
- 下载并安装: 下载插件包,按照说明上传到网站并安装到后台。
- 使用插件: 在后台找到新增加的菜单项,按照插件提供的指引上传文件(如ZIP压缩包、Word文档等),设置好栏目、作者等信息,然后点击导入即可。
优点:
- 操作简单: 图形化界面,通常只需几步就能完成。
- 格式支持广: 很多插件支持直接导入Word、PDF等格式。
缺点:
- 安全风险: 第三方插件可能存在后门或兼容性问题。
- 稳定性未知: 插件质量参差不齐,可能存在Bug。
- 可能需要付费: 一些功能强大的优质插件可能是收费的。
手动复制粘贴(不推荐,仅用于少量文章)
如果只有几篇文章,这个方法虽然原始,但最直接。
适用场景:
- 文章数量极少(少于10篇)。
- 对发布时间没有严格要求。
操作步骤:
- 进入DedeCMS后台,点击 “核心” -> 发布” -> “添加普通文章”。
- 一个一个地填写标题、选择栏目、粘贴内容、设置属性。
- 点击“确定”发布。
优点:
- 无需学习任何额外知识。
- 可以即时预览和调整。
缺点:
- 效率极低: 浪费大量时间。
- 容易出错: 手动操作容易遗漏或犯错。
总结与建议
| 方法 | 优点 | 缺点 | 推荐指数 | 适用人群 |
|---|---|---|---|---|
| 采集功能 | 功能强大、灵活、稳定、官方支持 | 需要学习正则表达式,对文件格式有要求 | ★★★★★ | 所有用户,尤其是有一定技术基础的用户 |
| 数据库导入 | 速度快,字段控制精确 | 技术门槛极高,有数据风险,过程复杂 | ★★☆☆☆ | 数据库管理员、高级开发者 |
| 第三方插件 | 操作简单,支持格式多 | 有安全风险,质量不稳定,可能收费 | ★★★☆☆ | 新手,或追求快速便捷的用户 |
| 手动复制 | 无需学习,直接 | 效率极低,易出错 | ★☆☆☆☆ | 仅用于1-2篇的临时应急 |
最终建议:
- 对于绝大多数用户,首选【方法一:使用DedeCMS自带的“采集”功能】。 它虽然需要花一点时间学习规则,但一旦掌握,你将拥有一个无比强大的内容处理工具,不仅能导入,还能轻松采集任何网站的内容。
- 如果你是纯新手,且时间紧张,可以尝试【方法三:使用第三方批量导入插件】。 但请务必从信誉良好的来源下载,并注意检查文件安全性。
- 除非你非常熟悉数据库,否则不要轻易尝试【方法二:数据库导入】。
- 永远不要用【方法四:手动复制】来处理批量任务。
