мета-данные страницы
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| zadanie_bonusnoe._telegrambot [2024/04/26 14:52] – wikiadmin | zadanie_bonusnoe._telegrambot [2024/05/25 03:47] (текущий) – wikiadmin | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | ======= Задание бонусное. TelegramBot ======= | ||
| Устанавливаем пакет python3-venv | Устанавливаем пакет python3-venv | ||
| Строка 14: | Строка 15: | ||
| (tgbot) в начале командной строки означает, | (tgbot) в начале командной строки означает, | ||
| - | Установим пакет aiogram внутри виртуального окружения: | + | Для выхода из виртуального окружения можно набрать |
| + | |||
| + | Установим библиотеку | ||
| < | < | ||
| - | Убедимся, | + | Убедимся, |
| < | < | ||
| - | Создаём скрипт | + | Создаём скрипт |
| < | < | ||
| - | Тут код | + | import asyncio |
| + | import logging | ||
| + | import sqlite3 | ||
| + | from aiogram import Router, F, Bot, Dispatcher | ||
| + | from aiogram.types import Message, ReplyKeyboardMarkup, | ||
| + | from aiogram.filters import CommandStart, | ||
| + | |||
| + | router = Router() | ||
| + | TOKEN=' | ||
| + | maink = ReplyKeyboardMarkup (keyboard=[[KeyboardButton(text=' | ||
| + | |||
| + | @router.message (CommandStart()) | ||
| + | async def cmd_start(message: | ||
| + | await message.answer(' | ||
| + | |||
| + | @router.message (F.text == ' | ||
| + | async def database (message: Message): | ||
| + | con = sqlite3.connect('/ | ||
| + | cur = con.cursor() | ||
| + | cur.execute(' | ||
| + | data_list = cur.fetchall() | ||
| + | con.close() | ||
| + | for data in data_list: | ||
| + | await message.answer(f' | ||
| + | |||
| + | @router.message() | ||
| + | async def word (message: Message): | ||
| + | await message.reply(' | ||
| + | |||
| + | async def main(): | ||
| + | bot = Bot(token=TOKEN) | ||
| + | dp = Dispatcher() | ||
| + | dp.include_router(router) | ||
| + | await dp.start_polling (bot) | ||
| + | |||
| + | if __name__==" | ||
| + | logging.basicConfig(level=logging.INFO) | ||
| + | try: | ||
| + | asyncio.run(main()) | ||
| + | except KeyboardInterrupt: | ||
| + | print(' | ||
| </ | </ | ||
| Строка 35: | Строка 79: | ||
| Получаем токен и записываем его в значение переменную TOKEN в скрипте. | Получаем токен и записываем его в значение переменную TOKEN в скрипте. | ||
| + | |||
| + | Запускаем наш Python-скрипт. Должны увидеть следующее: | ||
| + | |||
| + | < | ||
| + | (tgbot) bsk23-01-student-1@BSK23-01-1: | ||
| + | INFO: | ||
| + | INFO: | ||
| + | ' | ||
| + | </ | ||
| + | |||
| + | Открываем на телефоне Telegram, подключаемся к своему боту, запускаем! | ||
| + | |||
| + | {{: | ||