Skip to main content

Проста бібліотека для створення Telegram ботів для навчання

Project description

BendBandBot

Проста бібліотека для створення Telegram ботів, спеціально розроблена для навчання школярів програмуванню.

Особливості

  • Просто - без декораторів, async/await, складних конструкцій
  • Зрозуміло - коментарі українською, зрозумілі назви методів
  • Для початківців - підходить для учнів 6-9 класів
  • Два режими - прості команди з текстом або функції для складнішої логіки

Встановлення

pip install bendbandbot

Швидкий старт

from bendbandbot import SimpleBot

# Створюємо бота
bot = SimpleBot("ВАШ_ТОКЕН_ВІД_BOTFATHER")

# Додаємо команди (простий спосіб)
bot.on_command("start", "Привіт! 👋")
bot.on_command("help", "Я простий бот!")

# Запускаємо
bot.start()

Приклад з функціями

from bendbandbot import SimpleBot

bot = SimpleBot("ВАШ_ТОКЕН")

def greeting(message):
    name = bot.get_name(message)
    bot.send(message, f"Привіт, {name}! 😊")

bot.on_command("start", greeting)
bot.start()

Документація

Повний курс з 14 уроків: bendband.net/bot-course

API

Створення бота

bot = SimpleBot(token: str)

Команди

# Простий спосіб - тільки текст
bot.on_command("start", "Привіт!")

# Складніший - з функцією
def hello(message):
    bot.send(message, "Привіт!")
bot.on_command("start", hello)

Отримання даних

text = bot.get_text(message)  # Текст повідомлення
name = bot.get_name(message)  # Ім'я користувача

Надсилання

bot.send(message, "Текст")
bot.send_photo(message, "photo.jpg", "Підпис")

Обробка повідомлень

def echo(message):
    text = bot.get_text(message)
    bot.send(message, text)

bot.on_message(echo)

Приклади

Калькулятор

def calculate(message):
    text = bot.get_text(message)
    parts = text.split()
    
    if len(parts) == 3:
        num1 = float(parts[0])
        op = parts[1]
        num2 = float(parts[2])
        
        if op == "+":
            result = num1 + num2
        elif op == "-":
            result = num1 - num2
        elif op == "*":
            result = num1 * num2
        elif op == "/":
            result = num1 / num2 if num2 != 0 else "Помилка"
        
        bot.send(message, f"= {result}")

bot.on_message(calculate)

Випадковий вибір

import random

jokes = ["Жарт 1", "Жарт 2", "Жарт 3"]

def joke(message):
    bot.send(message, random.choice(jokes))

bot.on_command("joke", joke)

Ліцензія

MIT License - вільно для навчальних цілей

Автор

Створено bendband для навчання школярів програмуванню

🌐 https://bendband.net

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bendbandbot-1.0.1.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bendbandbot-1.0.1-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file bendbandbot-1.0.1.tar.gz.

File metadata

  • Download URL: bendbandbot-1.0.1.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for bendbandbot-1.0.1.tar.gz
Algorithm Hash digest
SHA256 091e7908f5a1cfca3cc5931abd7a4e29929b7f51f7e67dff83e5ee3fba1b5129
MD5 d1b066ddbd4fdb053108da8c67b43d66
BLAKE2b-256 41d3162d2e2982db2b874fda032458c65d88db881dc5f2bc553a6ce716ca6711

See more details on using hashes here.

File details

Details for the file bendbandbot-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: bendbandbot-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for bendbandbot-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 65aeb63094ced9574317f95fd07055ed96e99242563d1937b5b63140dc5e13b0
MD5 d199027dcb90145e7ae33fd179eaf7cd
BLAKE2b-256 fff975766fa4da8f4cfbc02fb22c1b7a8d86c155f4cf740905d363e5785a39d1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page