9

我需要一种将新文章直接插入到我的 MediaWiki 数据库而不损坏 wiki 安装的方法。

我猜如果我知道 MediaWiki 在创建新文章时插入哪些表/属性,那么我可以自己填写它们。

有没有人知道更好的方法或有任何建议?

4

6 回答 6

5

我是 Bulk Page Creator 的作者,很高兴看到它仍在使用!!!

我最新的 MediaWiki 导入工具从 CSV 数据文件和页面模板创建页面。它按照 Adrian 的建议生成 Mediawiki XML 导入文件。

看看这个

Mediawiki CSV 导入

于 2011-07-06T11:55:08.780 回答
4

在 MediaWiki 可用的许多机器人和 API 中,一个简单的起点是MediaWiki Bulk Page creator

它是一个简单的 PHP 脚本,依赖于 Snoopy 类库,可以从简单的文本格式创建多个页面。

在开始之前,请务必先阅读创建机器人。它包含有关如何设置对您的 wiki 的 bot 访问的关键详细信息。

于 2009-07-08T12:58:41.927 回答
2

绝对不想直接写入数据库。您可能希望创建一个扩展,该扩展将 RSS 中的选定项目作为输入,并使用 Article::doEdit()为每个项目创建一个 wiki 文章。

于 2009-07-07T22:02:36.340 回答
2

您应该使用机器人来执行此操作。机器人可以独立运行,但如果您要与其他代码集成,您可能需要根据语言进行选择。对于 PHP,有MediaWiki Bulk Page Creator。对于 Python,pymediawiki 带有Pagefromfile

Yaron Koren还有一个名为External Data的扩展,它解决了相关任务。它允许您将来自外部来源的数据合并到您的 wiki 页面中。您可以从 CSV、XML 或 JSON 中提取特定元素——从 URL、本地文件或数据库中检索。

于 2009-07-10T05:08:55.590 回答
1

为什么需要这样做?

  • 如果您尝试从以前的 wiki 安装迁移数据,则已经存在导入和导出工具。
  • 如果您想自动添加大量预先格式化的页面,MediaWiki API提供了比直接使用数据库更安全的途径。
于 2009-07-07T21:06:55.453 回答
1

使用Special:Export导出页面

使用Special:Import导入页面。请注意,您必须拥有“导入”用户权限才能导入。

于 2009-07-08T15:57:48.620 回答