F
F
fodiche2021-04-27 19:03:29
Python
fodiche, 2021-04-27 19:03:29

I am writing a bot on vk_api, how to display the player's profile from the database?

the bottom line is that when writing the command "profile (@login user from the conversation)" his data would be displayed from the database

import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType
import random
import time
import datetime
import sqlite3

vk_session = vk_api.VkApi(token="")
longpoll = VkLongPoll(vk_session)

print("bot started")


connect = sqlite3.connect("bot3.db")
cursor = connect.cursor()

cursor.execute("""CREATE TABLE IF NOT EXISTS users(
  name TEXT,
  cash INT,
  profit INT,
  user_id INT
)""")

connect.commit()

def sender(id, text,): 
  vk_session.method("messages.send", {"chat_id" : id, "message" : text, "random_id" : 0})

while True:
  for event in longpoll.listen():
    if event.type == VkEventType.MESSAGE_NEW:
      if event.to_me:
        if event.from_chat:
          msg = event.text.lower()

          userid = event.user_id
          id = event.chat_id
          user = vk_session.method("users.get", {"user_ids": 1})
          userfullname = user[0]['first_name'] +  ' ' + user[0]['last_name']

          if msg == "привет":
            sender(id, "Привет, я бот группы \n\n Для того чтобы начать играть пропиши команду: рег\n\nЕсли прописал то можешь ознакомиться с нашей игровой ситсемой прописав: инфо")

          if msg == "рег":
            connect = sqlite3.connect("bot3.db")
            cursor = connect.cursor()
            cursor.execute(f"INSERT INTO users VALUES ('{userfullname}', {5000}, {0}, '{userid}')")
            connect.commit()
            sender(id, "Поздравляю\n\nТы зарегестрированю теперь можешь пользоватся мной увидев мой список команд: команды")

          if msg == "инфо":
            sender(id, "Мой бот это монополия денег некий тайкунКаждый игрок начинает с 5000\nФУНКЦИОНАЛ\nКАЗИНО\nЫ казино ты можешь как выйграть так и проиграть.\nПока что присутсвует только одна игра орел и решка.\nБИЗНЕСЫ\nПокупай предприятия которые будут давать тебе ежедневный доход\nкоманды из всего функционала вы можете увидеть прописав: команды")

Answer the question

In order to leave comments, you need to log in

1 answer(s)
A
Alexa2007, 2021-04-27
@fodich

Here is an example of working with the base

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question