Skip to content
/ ManyACG Public

Collect, Download, Organize and Share your Favorite Anime Pictures.

License

Notifications You must be signed in to change notification settings

krau/ManyACG

Folders and files

NameName
Last commit message
Last commit date
Dec 25, 2024
Apr 4, 2025
Apr 20, 2025
Apr 22, 2025
Apr 4, 2025
Apr 22, 2025
Mar 26, 2025
Jan 26, 2025
Feb 27, 2025
Apr 4, 2025
Mar 26, 2025
Mar 18, 2025
Apr 4, 2025
Apr 4, 2025
Apr 22, 2025
Feb 6, 2025
Apr 4, 2025
Feb 6, 2025
Dec 9, 2024
Mar 26, 2025
Dec 22, 2024
Feb 27, 2025
Feb 6, 2025
Feb 17, 2025
Apr 22, 2025
Apr 22, 2025
Apr 22, 2025

Repository files navigation

ManyACG

ManyACG_banner

Collect, Download, Organize and Share your Favorite Anime Pictures.

这里是 ManyACG 的后端代码.

ManyACG 是为收集与整理二次元插画作品而生的项目, 目前主要通过 Telegram Bot 完成数据交互.

在充当 Telegram 插画频道的爬虫与管理 Bot 的同时, ManyACG 还能使用已存入数据库的作品构建一个自己的二次元图片分享网站.

前端代码 -> ManyACG/web

manyacg-web

Demo

特性

  • 多图源支持
  • 可选的存储原图, 多存储端支持
    • 本地存储
    • WebDAV
    • Alist
    • Telegram
  • 基于图像哈希的去重与以图搜图
  • 带有逻辑控制的关键词搜图
  • 以 Telegram 所接受的最高质量发送图片
  • Web API
  • 基于 AI 的图片标签生成 -> konatagger
  • 集成 MeiliSearch , 支持混合搜索与相似作品检索.
  • 轻量, 原生跨平台, 部署简单

部署

安装依赖组件

MongoDB

项目需要启用了副本集的 MongoDB 作为数据库, MongoDB Cloud 提供的免费实例足够使用, 也可以选择自行搭建.

你可以参考这个 repo 使用 docker compose 快速启动一个 MongoDB 副本集: mongodb-rs-compose

FFmpeg

项目使用 FFmpeg 进行一些图像处理, 请在自己的系统上安装, 以下是一些系统的安装示例:

Ubuntu/Debian:

sudo apt install ffmpeg -y

其他/任意 Linux 发行版安装 FFmepg 参考

Windows:

  1. gyan.dev 下载 ffmpeg-release-full.7z
  2. 解压并将 bin 目录添加到环境变量 PATH

从二进制文件部署 ManyACG

完成数据库和 FFmpeg 的安装后, 需要为准备使用的 Bot 设置一个头像, 然后在 release 页面下载与自己系统和架构对应的文件, 解压.

在与解压出的二进制文件的相同目录下创建 config.toml 文件, 修改各项配置.

最简配置

如果你只需要将 ManyACG 作为一个 Telegram 频道的自动发图与管理 Bot 使用, 使用以下简单的配置即可:

[database]
database = "manyacg"
uri = "mongodb://admin:password@localhost:27017"

[telegram]
token="token"
admins = [123456789]
channel = true
username = "@moreacg"

# 配置 pixiv cookies 可以提高大部分作品的爬取成功率
[source.pixiv]
[[source.pixiv.cookies]]
name = "PHPSESSID"
value = ""
[[source.pixiv.cookies]]
name = "yuid_b"
value = ""

# 如果你不需要存储原图, 以下配置也可以删除
[storage]
original_type = "local"

[storage.local]
enable = true
path = "./downloads"

完整配置

如果你需要使用 ManyACG 的全部功能, 请参考 config.all.toml 文件.

更详细的配置可以参考 config 目录源码


赋予二进制文件执行权限并运行即可:

chmod +x manyacg
./manyacg

安装为服务

适用于 Linux 系统, 以 systemd 为例:

/etc/systemd/system/manyacg.service

[Unit]
Description=ManyACG
After=network.target

[Service]
Type=simple
WorkingDirectory=/path/to/manyacg
ExecStart=/path/to/manyacg/manyacg
Restart=always

[Install]
WantedBy=multi-user.target
systemctl enable manyacg
systemctl start manyacg

使用 Docker 部署 ManyACG

下载 docker-compose.yml.env 文件, 修改 .env 文件中的配置.

docker compose up -d