我需要一种方法将新文章直接插入我的MediaWiki数据库,而不会损坏wiki安装。
我猜我是否知道MediaWiki在创建新文章时会插入哪些表/属性,然后我可以自己填写它们。
有没有人知道更好的方法或有任何建议?
答案 0 :(得分:5)
我是Bulk Page Creator的作者,很高兴看到它仍在使用!!!
我最新的MediaWiki导入工具可以从CSV数据文件和页面模板创建页面。它按照Adrian的建议生成Mediawiki XML导入文件。
检查出来
答案 1 :(得分:4)
在MediaWiki可用的许多机器人和API中,一个简单的起点是MediaWiki Bulk Page creator。
这是一个简单的PHP脚本,依赖于Snoopy类库,可以从简单的文本格式创建多个页面。
开始之前,请务必先阅读Creating a Bot。它包含有关如何设置对wiki的bot访问权限的重要细节。
答案 2 :(得分:2)
当然你不想直接写入数据库。您可能希望创建一个扩展,将RSS中的选定项目作为输入,并使用Article::doEdit()为每个项目创建一个wiki文章。
答案 3 :(得分:2)
你应该用机器人做这件事。机器人可以独立运行,但如果您正在与其他代码集成,则可能需要根据语言进行选择。对于PHP,有MediaWiki Bulk Page Creator。对于Python,pymediawiki附带Pagefromfile。
Yaron Koren还有一个名为External Data的扩展程序,用于解决相关任务。它允许您将来自外部源的数据合并到您的Wiki页面中。您可以从CSV,XML或JSON中提取特定元素 - 从URL,本地文件或数据库中检索。
答案 4 :(得分:1)
为什么需要这样做?
答案 5 :(得分:1)
使用Special:Import导入页面。请注意,您必须让'import'user right能够导入。