This commit is contained in:
63
src/main.py
Normal file
63
src/main.py
Normal file
@ -0,0 +1,63 @@
|
||||
import asyncio
|
||||
import logging
|
||||
import sys
|
||||
import sqlite3
|
||||
from os import getenv
|
||||
|
||||
from aiogram import Bot, Dispatcher, html
|
||||
from aiogram.client.default import DefaultBotProperties
|
||||
from aiogram.enums import ParseMode
|
||||
from aiogram.filters import CommandStart, Command
|
||||
from aiogram.types import Message
|
||||
|
||||
|
||||
TOKEN = "8549282447:AAGyzuDjOa6V7fqvxCsVUYydp9VEn4t7t3M"
|
||||
|
||||
|
||||
dp = Dispatcher()
|
||||
con = sqlite3.connect("penis.db")
|
||||
cur = con.cursor()
|
||||
|
||||
@dp.message(CommandStart())
|
||||
async def command_start_handler(message: Message) -> None:
|
||||
await message.answer(f"Hello, {html.bold(message.from_user.full_name)}!")
|
||||
|
||||
|
||||
@dp.message(Command("penis"))
|
||||
async def handler(message: Message) -> None:
|
||||
res = cur.execute(f"SELECT user FROM penis WHERE user={message.from_user.id}").fetchone()
|
||||
|
||||
if res == None:
|
||||
await message.answer(f"У вас пенисов: {html.bold(0)}")
|
||||
else:
|
||||
penis = cur.execute(f"SELECT count FROM penis WHERE user={message.from_user.id}").fetchone()
|
||||
await message.answer(f"У вас пенисов: {html.bold(penis[0])}")
|
||||
|
||||
|
||||
@dp.message()
|
||||
async def echo_handler(message: Message) -> None:
|
||||
if message.text == "пенис" or message.text == "Пенис":
|
||||
res = cur.execute(f"SELECT user FROM penis WHERE user={message.from_user.id}").fetchone()
|
||||
|
||||
if res == None:
|
||||
cur.execute(f"INSERT INTO penis VALUES ({message.from_user.id}, 0)")
|
||||
|
||||
cur.execute(f"UPDATE penis SET count=count+1 WHERE user={message.from_user.id}")
|
||||
con.commit()
|
||||
|
||||
logging.info("Penis detected!")
|
||||
|
||||
|
||||
async def main() -> None:
|
||||
cur.execute("CREATE TABLE IF NOT EXISTS penis(user TEXT, count INT)")
|
||||
con.commit()
|
||||
|
||||
bot = Bot(token=TOKEN, default=DefaultBotProperties(parse_mode=ParseMode.HTML))
|
||||
|
||||
await dp.start_polling(bot)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
logging.basicConfig(level=logging.INFO, stream=sys.stdout)
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user