运行 WikiMedia lua 脚本或扩展 API 模块输出
Running WikiMedia lua script or expanding API module output
我有两个具体问题,希望有人能回答其中一个:
- 有没有办法将 MediaWiki 的
mw
库提供给独立的 lua 脚本?
- 是否有 API 命令或 属性 公开动态模块的输出?
背景:我正在尝试弄清楚如何访问维基词典模块的输出(在本例中,pron-th
)。这是一个可以由编辑器动态插入以显示泰语单词音译(发音)的模块。例如,每当编辑添加此行时:
{{th-pron|ไคฺร่}}
...服务器将 运行 记录的 Lua 脚本找到 here and outputs a table showing the various transliterations (example). However, this output is specifically excluded when doing API requests (example),但我找不到包含此数据的端点。并且 运行ning lua 脚本直接失败,因为它缺少几个导入,例如 mw.ustring
、mw.text
等,我相信它们是在 PHP 包括更高的软件堆栈。我有重要的 PHP 经验,但 none Lua,所以我有点不知所措。
除了直接调用每个页面并抓取数据,我想不出办法。
MediaWiki mw 库是 Scribunto 扩展的一部分(参见 https://github.com/wikimedia/mediawiki-extensions-Scribunto/tree/master/includes/engines/LuaCommon/lualib),并且有很多依赖性回到 MEdiawikis php 核心,所以导入并不容易那。
您可以通过 API 呈现维基文本,例如 https://en.wiktionary.org/w/api.php?action=parse&text=%20{{th-pron|%E0%B9%84%E0%B8%84%E0%B8%BA%E0%B8%A3%E0%B9%88}}&contentmodel=wikitext 并解析输出,或者您可以尝试将 MediaWiki 特定函数调用替换为对某些本地 Lua 的其他函数调用图书馆。
我有两个具体问题,希望有人能回答其中一个:
- 有没有办法将 MediaWiki 的
mw
库提供给独立的 lua 脚本? - 是否有 API 命令或 属性 公开动态模块的输出?
背景:我正在尝试弄清楚如何访问维基词典模块的输出(在本例中,pron-th
)。这是一个可以由编辑器动态插入以显示泰语单词音译(发音)的模块。例如,每当编辑添加此行时:
{{th-pron|ไคฺร่}}
...服务器将 运行 记录的 Lua 脚本找到 here and outputs a table showing the various transliterations (example). However, this output is specifically excluded when doing API requests (example),但我找不到包含此数据的端点。并且 运行ning lua 脚本直接失败,因为它缺少几个导入,例如 mw.ustring
、mw.text
等,我相信它们是在 PHP 包括更高的软件堆栈。我有重要的 PHP 经验,但 none Lua,所以我有点不知所措。
除了直接调用每个页面并抓取数据,我想不出办法。
MediaWiki mw 库是 Scribunto 扩展的一部分(参见 https://github.com/wikimedia/mediawiki-extensions-Scribunto/tree/master/includes/engines/LuaCommon/lualib),并且有很多依赖性回到 MEdiawikis php 核心,所以导入并不容易那。
您可以通过 API 呈现维基文本,例如 https://en.wiktionary.org/w/api.php?action=parse&text=%20{{th-pron|%E0%B9%84%E0%B8%84%E0%B8%BA%E0%B8%A3%E0%B9%88}}&contentmodel=wikitext 并解析输出,或者您可以尝试将 MediaWiki 特定函数调用替换为对某些本地 Lua 的其他函数调用图书馆。