我想生成我们自己的Wiki的离线ZIM版本(在Mediawiki上运行).收集扩展是轻而易举的安装,但仅适用于选择单个页面,下一步可以将其合并为单个ZIM文件.
但是有了数百页的维基,这很难做到,基于单页.我想要整个wiki的zim-dump.我知道这是可能的,因为整个维基百科也有一个zim文件.
但是,我找不到如何做到这一点.有人能帮忙吗?提前致谢!
我不知道这个答案在多大程度上仍然相关,但在这里......
经过一番折腾,我终于设法从我的基于 MediaWiki 的私有 wiki 创建了一个 ZIM 文件:
mwoffliner工作,但并非没有GitHub 上开发人员的宝贵帮助请在下面找到我所做的分步说明。请注意,主要指令来自GitHub 上openZIM 的 mwoffliner分支,因此这些指令的大部分功劳归于他们。
节点
$ sudo apt install curl
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash && source ~/.bashrc && nvm install stable && node --version
Run Code Online (Sandbox Code Playgroud)
图像处理&Redis&git&meson&gcc&g++&pkg-config安装
$ sudo apt install jpegoptim advancecomp gifsicle pngquant imagemagick redis-server git meson g++ pkg-config libzim-dev
Run Code Online (Sandbox Code Playgroud)
libzim-dev:从版本 2.0.0 手动升级到版本 >=4.0.0
1- 如果已经安装了 libzim 2.0.0 (libzim-dev),则继续卸载它,否则继续第 2 点。
$ sudo apt remove libzim-dev #removes libzim 2.0.0
$ sudo apt purge libzim-dev
$ sudo apt autoremove #removes libzim2
Run Code Online (Sandbox Code Playgroud)
2- 安装 libzim 版本 >=4.0.0
$ sudo apt install cython3 liblzma-dev libgumbo-dev libicu-dev libmagic-dev libxapian-dev python-dev python-pip python-virtualenv zlib1g-dev
$ git clone https://github.com/openzim/libzim.git
$ cd libzim
$ meson . build
$ ninja -C build
$ sudo ninja -C build install
$ sudo ldconfig
Run Code Online (Sandbox Code Playgroud)
ZimWriterFS 手动安装
(来源)
$ cd ~/Downloads/
$ sudo apt install librsvg2-bin
$ git clone https://github.com/openzim/zimwriterfs.git
$ cd zimwriterfs
$ meson . build
$ ninja -C build
$ sudo ninja -C build install
$ zimwriterfs
zimwriterfs usage page should appear
Run Code Online (Sandbox Code Playgroud)
VirtualBox - 从主机操作系统访问 VirtualBox 来宾
(来源)
mwoffliner 命令发出
此命令假设:
192.168.56.5来宾操作系统(请参阅上面VirtualBox - 从主机操作系统访问 VirtualBox 来宾部分下的说明)(使用 来检查操作系统的 IP 地址ifconfig)LocalSettings.php的$wgServer = "http://192.168.56.5";(检查操作系统的 IP 地址ifconfig)YourWiki/var/www/html/(即,/var/www/html/YourWiki)实际命令:
mwoffliner --mwUrl=http://192.168.56.5/YourWiki --adminEmail=foo@bar.net --verbose --redis=redis://127.0.0.1:6379 --mwWikiPath=/ --mwApiPath=api.php --localParsoid
是的,你可以,但这并不容易。Kiwix 开发人员现在正在开发基于 Parsoid 的解决方案:http://sourceforge.net/p/kiwix/other/ci/master/tree/mwoffliner/ 简而言之,Parsoid 是 MediaWiki VisualEditor 的后端,它处理将 wiki 文本翻译为 HTML,反之亦然。它有一个 HTML 版本的缓存,可用于此类内容。https://www.mediawiki.org/wiki/Parsoid应该提供一些有关如何设置它的信息......
| 归档时间: |
|
| 查看次数: |
2619 次 |
| 最近记录: |