No description
  • Python 95.2%
  • Dockerfile 4.8%
Find a file
Nicolas Cellier 99b2ff6c1a fix dockerfile
2025-11-09 21:15:29 +01:00
scibot Better error message 2023-11-06 13:09:14 +01:00
tests increase freedom on unpaywall validation 2022-12-08 11:22:48 +01:00
.gitignore first commit 2022-11-16 19:06:17 +01:00
.gitlab-ci.yml use dind 2025-11-09 19:25:49 +01:00
.python-version use uv 2025-11-09 19:33:01 +01:00
docker-compose.yml add mail 2022-11-18 16:29:59 +01:00
Dockerfile fix dockerfile 2025-11-09 21:15:29 +01:00
mise.toml use uv 2025-11-09 19:33:01 +01:00
pyproject.toml use uv 2025-11-09 19:33:01 +01:00
README.md update readme 2022-11-18 20:27:08 +01:00
uv.lock use uv 2025-11-09 19:33:01 +01:00

Scibot

A bot for downloading paper from open-access or scihub automatically, with a python companion library.

This work is highly WIP. The pdf are not stored in any way.

Library usage

from scibot import PaperHelper

helper = PaperHelper.from_doi("https://doi.org/10.1145/3375633")
helper.download()

Bot usage

/get_paper ref:doi prefer:oa

The permission needed are : use slash command, send message, attach files.

Hosting

You can either install the library with pip and run the bot with the command scibot (I highly recommand using a systemd unit or any other way to deal with such long-running service)

pip install git+https://gitlab.com/celliern/scibot
scibot

With two mandatory env variable :

BOT_TOKEN=... # You have to create a discord bot
UNPAYWALL_EMAIL=your@email.com

or use the docker file / docker-compose image.

The image is also available at registry.gitlab.com/celliern/scibot : a simple docker container will look like

version: "3"

services:
  scibot:
    image: registry.gitlab.com/celliern/scibot:latest
    environment:
      - BOT_TOKEN=...
      - UNPAYWALL_EMAIL=...
    restart: "unless-stopped"