可以创建整个Wiki的ZIM文件吗? (我自己的,基于mediawiki)

时间:2013-04-12 11:55:54

标签: mediawiki

我想生成我们自己的Wiki的离线ZIM版本(在Mediawiki上运行)。Collection extension可以轻松安装,但仅适用于选择单个页面,下一步可以组合使用到一个ZIM文件。

但是有了数百页的维基,基于单页,这太难了。我想要整个wiki的zim-dump。我知道这是可能的,因为complete wikipedia还有一个zim文件。

然而,我无法找到这是怎么做的。 有人能帮忙吗? 提前谢谢!

3 个答案:

答案 0 :(得分:2)

我不知道这个答案在多大程度上仍然有用,但是在这里……

在遇到很多麻烦之后,我终于设法从基于MediaWiki的私有Wiki中创建了一个ZIM文件:

  • 我从以下页面开始:OpenZIM-Build your ZIM file
  • 我测试了所有列出的可能性,但只有mwoffliner(对我来说)有效
  • 安装是在Mac上托管的VirtualBox(版本6.0.0)Ubuntu 18.10 Desktop来宾中完成的(macOS Mojave,vs。10.14.2)
    • 请注意,我最终以无头的方式使用Guest OS,因此图形界面变得无用,下一步将是使用服务器版本的Ubuntu
  • 经过艰苦的努力,我设法使mwoffliner正常工作,但并非没有开发人员在GitHub上的宝贵帮助

请按以下逐步说明操作。请注意,主要指令来自mwofflineropenZIM on GitHub分支,因此这些指令的大部分功劳都归功于他们。

NodeJS

$ 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

图像处理&Redis&git&meson&gcc&g ++&pkg-config安装

$ sudo apt install jpegoptim advancecomp gifsicle pngquant imagemagick redis-server git meson g++ pkg-config libzim-dev

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

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

ZimWriterFS手动安装

Source

$ 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

VirtualBox-从主机操作系统访问VirtualBox Guest

  • Source

    1. 启动VirtualBox 6.x.x
    2. 菜单文件
    3. 选择主机网络管理器…
    4. 选择“ DHCP服务器”标签
    5. 点击创建(在窗口的左上角)
    6. 选择启用服务器
    7. 服务器地址:192.168.56.2
    8. 服务器掩码255.255.255.0
    9. 地址下限:192.168.56.3
    10. 地址上限绑定:192.168.56.254
    11. 选择选项卡适配器
    12. 确认已选择“手动配置适配器”,并且
    13. IPv4地址:192.168.56.1
    14. IPv4网络掩码:255.255.255.0
    15. 点击关闭
    16. 右键单击访客计算机
    17. 选择设置…(或只需按cmd-s)
    18. 选择标签网络
    19. 选择标签适配器2
    20. 点击启用网络适配器
    21. 附加到:选择仅主机适配器
    22. 名称:vboxnet0
    23. 点击确定
    24. 启动来宾计算机

发出了mwoffliner命令

此命令假定:

  • MediaWiki Wiki已启动并正在运行,
  • VirtualBox将IP地址192.168.56.5分配给来宾OS(请参见上面的 VirtualBox-从主机OS访问VirtualBox Guest 下的说明)(用{{检查OS的IP地址1}})
  • ifconfig的{​​{1}}(用LocalSettings.php检查操作系统的IP地址)
  • 您的维基名称为$wgServer = "http://192.168.56.5";
  • 包含您的Wiki的MediaWiki文件夹位于ifconfig(即YourWiki

实际命令

/var/www/html/

答案 1 :(得分:1)

是的,你可以,但这并不容易。 Kiwix开发人员正在研究基于Parsoid的解决方案:http://sourceforge.net/p/kiwix/other/ci/master/tree/mwoffliner/ 简而言之,Parsoid是MediaWiki VisualEditor的后端,它负责处理wikitext到HTML的转换,反之亦然。它有一个HTML版本的缓存,可以利用这些东西。 https://www.mediawiki.org/wiki/Parsoid应提供有关如何设置的一些信息......

答案 2 :(得分:0)

您可能需要测试一些工具。一些已被删除,但其中大多数正在开发中。

  

以下是有关如何准备材料和使用的一些注意事项   zimwriterfs。根据我的限制,这些注释不完整   使用工具的经验(摘自http://www.openzim.org/wiki/Build_your_ZIM_file

这里是从现有HTML内容创建ZIM文件的链接 “请参阅http://www.openzim.org/wiki/Zimwriterfs_instructions以获得概述,并阅读下面有关zimwriterfs的部分以了解其他上下文”

我尝试了另一个名为 Zim-桌面Wiki http://zim-wiki.org/的Windows程序,但是可以尝试一下。相反,将ZIM转换为HTML。

无论如何,请让我们知道它的进展情况,我还想构建自己的zim文件。祝好运。

相关问题