/nazurin

πŸŽ‰ Images collection done right. Telegram ε›Ύη‰‡ζ”Άθ—ζœΊε™¨δΊΊ / A Telegram bot that helps you collect ACG illustrations.

Primary LanguagePythonMIT LicenseMIT

Nazurin

Codacy Badge

Documentation | δΈ­ζ–‡ζ–‡ζ‘£

小さγͺ小さγͺθ³’ε°†, a Telegram bot that helps you collect ACG illustrations from various sites.

Architecture

architecture.png

Features

  • View/Download artwork from various sites
  • Add images to your collection via Telegram
  • Store your collection in Telegram channels
  • Store images on multiple types of storage
  • Store image metadata in multiple types of database

Supported Sites

Name URL Commands Collection
Pixiv https://www.pixiv.net/ βœ” βœ”
Danbooru https://danbooru.donmai.us/ βœ” βœ”
Safebooru https://safebooru.donmai.us/ βœ”
yandere https://yande.re/ βœ” βœ”
Konachan https://konachan.com/ βœ” βœ”
Lolibooru https://lolibooru.moe/ βœ”
Zerochan https://www.zerochan.net/ βœ” βœ”
Gelbooru https://gelbooru.com/ βœ”
Twitter https://twitter.com/ βœ” βœ”
ArtStation https://www.artstation.com/ βœ”
Wallhaven https://wallhaven.cc/ βœ”
Bilibili Dynamics https://t.bilibili.com/ βœ”
Weibo https://weibo.com/ βœ”
DeviantArt https://www.deviantart.com/ βœ”
Lofter https://www.lofter.com/ βœ”
Kemono.party https://kemono.party/ βœ”
Bluesky https://bsky.app/ βœ”

Supported Databases

Driver Usage Config Value Note
TinyDB TinyDB Local Default
Firestore Firestore Firebase
MongoDB MongoDB Mongo MongoDB Atlas supported
Cloudant Cloudant Cloudant

You can also implement your own database driver by creating a file under database folder, and set this option to the name of driver class.

Supported Storage

Name Usage Config Value Note
Local Local Local Default
Telegram Telegram Telegram Added in v2
MEGA MEGA Mega
Google Drive Google Drive GoogleDrive
OneDrive OneDrive OneDrive
S3 S3 S3

Configuration

For more information, see Documentation.

Deploy

For more deploy options, checkout Documentation.

Manual

Tips: You may comment out unused dependencies in requirements.txt before installation.

  1. Install dependencies: pip install -r requirements.txt
  2. Set the required environment variables or place them in .env file, you may refer to .env.example as an example
  3. Start the bot: python -m nazurin

Docker

  1. Configure the options in .env
  2. Run docker-compose up -d to use the lastet pre-built Docker images. (Alternatively, you may build the image yourself: docker-compose up -d --build)

Usage

Use /help command to get a list of available commands or help for a specific command, use /set_commands to set bot commands in command menu.

Some system commands are listed below:

  • /clear_cache β€” Clear cache
  • /help [COMMAND] β€” Get help of all commands or a specific command
  • /ping β€” Pong
  • /set_commands β€” Set commands
  • /start β€” Get help

How to update your collection

Send the bot a message with a link of supported sites, this message will be forwarded to GALLERY channel, the bot will then download the original images from the site, send the files to ALBUM channel, and finally store to your custom destinations.

Tips: On mobile you can use the share button in apps, as long as the final message contains a link.