#bot #wikipedia #rewrite #wikimedia #performance #complete #systemd

bin+lib arkbot

A Rust重写(并彻底重新设计)Arkanosis的维基百科机器人

3个版本 (破坏性更新)

0.3.0 2023年3月16日
0.2.0 2022年7月17日
0.1.0 2021年1月5日

#7 in #wikipedia

每月下载量 33次

ISC许可证

46KB
1K SLoC

arkbot-rs License Build status

arkbot-rs是Arkanosis的维基百科机器人的Rust重写(并彻底重新设计)。

原始Arkbot由sed、awk、wget和一些zsh混合组成,已经使用了十多年,但从未真正高效。

arkbot-rs从设计上就是为了解决Arkbot的不足,包括

  • 性能,
  • 需要人工干预。

目标是让Arkbot能够在小型服务器或VM(例如在Toolforge上)上运行,并独立执行其任务,无需任何人工干预。

用法

Usage: arkbot
       arkbot -h | --help
       arkbot --version

Options:
    -h, --help               Show this screen.
    --version                Show version.

编译

在您的源代码副本中运行cargo build --release

安装

在您的源代码副本中运行sudo cp target/release/arkbot /usr/bin/arkbot

配置

创建~/.config/arkbot/config.toml,内容如下

login = '$BOT_NAME'
password = '$BOT_PASSWORD'
server_url = 'https://fr.wikipedia.org'
script_path = '/w'
output_directory = '/tmp/.arkbot-data'

并用您的机器人账户名替换$BOT_NAME,以及用您的机器人账户密码替换$BOT_PASSWORD。请使用为arkbot-rs创建的机器人密码,而不是实际账户密码。

将创建output_directory,但它现在不再使用,可能在未来的版本中消失。

作为systemd服务启用,每小时运行一次

systemctl --user link systemd/arkbot.service systemd/arkbot.timer
systemctl --user daemon-reload
systemctl --user enable --now arkbot.timer

然后Arkbot将每小时检查一次是否有新的存档可用。如果有,它将下载它并更新目标维基百科上的页面。

警告:目前,目标维基和目标页面是硬编码的,这使得arkbot-rs仅适用于法语维基百科。

监控

您可以使用以下命令检查arkbot-rs的历史记录:systemctl --user --list-timer

您可以使用以下命令读取arkbot-rs的日志:journalctl --user -u arkbot -f

贡献和报告错误

欢迎通过GitHub拉取请求进行贡献。

请在GitHub问题上报告错误和功能请求。

许可证

arkbot-rs版权所有(C) 2020-2023 Jérémie Roquet [email protected],并使用ISC许可证授权。

依赖关系

~12–29MB
~386K SLoC