https://github.com/insanusmokrassar/boorugrabbertelegrambot
Booru boards grabber telegram bot
https://github.com/insanusmokrassar/boorugrabbertelegrambot
dev-inmo-tgbotapi dev-inmo-tgbotapi-examples kotlin ktgbotapi telegram-bot
Last synced: 6 months ago
JSON representation
Booru boards grabber telegram bot
- Host: GitHub
- URL: https://github.com/insanusmokrassar/boorugrabbertelegrambot
- Owner: InsanusMokrassar
- License: mit
- Created: 2022-09-06T18:24:00.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-11-16T11:39:39.000Z (6 months ago)
- Last Synced: 2024-11-16T12:21:28.728Z (6 months ago)
- Topics: dev-inmo-tgbotapi, dev-inmo-tgbotapi-examples, kotlin, ktgbotapi, telegram-bot
- Language: Kotlin
- Homepage:
- Size: 142 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# BooruGrabberTelegramBot
Bot for booru-boards grabbing. It uses [imageboard-api](https://github.com/Kodehawa/imageboard-api) for requests to boards and support next boards as well as `imageboard-api`:
* Rule34
* e621
* Konachan
* Yande.re
* Danbooru
* Safebooru
* Gelbooru
* e926Sample bot presented here: [@booru_grabber_bot](https://t.me/booru_grabber_bot)
## Available commands
Bot have two helping commands: `/start` and `/help`. These commands will return help for bot `/request`/`/enable` commands:
```bash
Usage: enable [OPTIONS] QUERY...Options:
-n INT Amount of pictures to grab each trigger
time
-k, --krontab TEXT... Krontab in format * * * * *. See
https://bookstack.inmo.dev/books/krontab/page/string-format
-b, --board VALUE Board type. Possible values: r34, e621,
konachan, yandere, danbooru, safebooru,
gelbooru, e926
-g, --gallery Effective only when count passed > 1. Will
send chosen images as gallery instead of
separated images
-r, --rating [safe|general|questionable|sensitive|explicit]
-a, --attach_urls
-h, --help Show this message and exitArguments:
QUERY Your query to booru. Use syntax "-- -sometag" to add excluding of
some tag in query
```As said previously, there are `/request` and `/enable`
### Request parameters
I will omit obvious parameters like `-n`.
* `-b`/`--board` - select which board to use
* `-n` (optional, default 1, max 10)
* `-k`/`--krontab` (optional) - use [krontab](https://bookstack.inmo.dev/books/krontab/page/string-format)-string for setting up request from time to time. Unfortunatelly, **currently supported only main five settings: seconds, minutes, hours, days and months**
* `-g`/`--gallery` (optional) - flag indicates that in case you passed `-n` more than 1 messages should be sent as media group
* `-r`/`--rating` (optional) - rating of images in requests
* `-a`/`--attach_urls` (optional) - will force bot to attach url of image to the sent imagesBesides, after all parameters you should add query for the board like `rem_(re:zero)`:
```
/request -n 3 -a -b safebooru -g rem_(re:zero)
```If you want to use negative query parameters, you must escape them with `--` before parameter:
`-- -1girl` (exclude posts with `1girl` tag)
Bot remember which posts it already has sent to the chat. So, there should not be repetitions in the sent images
### Samples
All the samples will use query `rem_(re:zero) -- -1girl` (in fact it is query `rem_(re:zero) -1girl`) and `-r safe` just to make request suitable for work.
---
Sample from above to request 3 photos in gallery mode from safebooru with urls attaching:
```
/request -n 3 -a -b safebooru -g rem_(re:zero) -- -1girl
```---
Same sample as above, but with requests each day at 22:00 UTC
```
/enable -k 0 0 22 * * -n 3 -a -b safebooru -g rem_(re:zero) -- -1girl
```---
Same sample as above, but with requests each day at 22:00 UTC
```
/enable -k 0 0 22 * * -n 3 -a -b safebooru -g rem_(re:zero) -- -1girl
```Will enable autorequests of images using [krontab](https://bookstack.inmo.dev/books/krontab/page/string-format) and other parameters.
Sample:
```bash
/enable -n 3 -k 0 0 18 * * -b safebooru -g 1girl gradient
```You may use the same syntax with just replacing of `/enable` by `/request`