Top.Mail.Ru
Ответы

Python чат-бот телеграмма

здравствуйте я хочу попросить помощи код пишет для меня нейросеть
ошибка заключается в том что когда бот пытается получить доступ к владельцу группы вылазит такая ошибка
Traceback (most recent call last):
File "C:\Users\Dmitry\PycharmProjects\PythonProject\.venv\telegramm.py", line 68, in handle_check
chat_owner = chat_info.get_member(chat_ info.id )
^^^^^^^^^^^^^^^^^^^^
AttributeError: 'ChatFullInfo' object has no attribute 'get_member'
использую модуль telebot
так же код можно посмотреть ниже
ошибка выходит при ввода команды /проверить
она должна определять кто владелец группы и давать 4 ранг - владелец (подробнее в коде)

1. сама команда Проверить

@bot.message_handler(commands=['проверить'])
def handle_check(message):
chat_id = message.chat.id
try:
chat_info = bot.get_chat(chat_id)
if chat_info.type in ['group', 'supergroup']:
try:
# Directly try to get the owner using the correct method
chat_owner = chat_info.get_member(chat_ info.id )
bot.reply_to(message, f"Владелец группы: {chat_owner.user.first_name}")
except telebot.apihelper.ApiException as e:
logging.error(f"Error retrieving chat owner: {e}")
bot.reply_to(message, "Ошибка: не удалось получить владельца группы. Возможно, у бота нет доступа.")
except Exception as e:
logging.exception(f"An unexpected error occurred: {e}")
bot.reply_to(message, "Произошла неизвестная ошибка.")
else:
bot.reply_to(message, "Команда доступна только в группах и супергруппах.")
except telebot.apihelper.ApiException as e:
logging.error(f"API Error: {e}")
bot.reply_to(message, f"Ошибка доступа к информации о группе: {e}")
except Exception as e:
logging.exception(f"An unexpected error occurred: {e}")
bot.reply_to(message, "Произошла неизвестная ошибка.")

все модули

import telebot
import sqlite3
import logging
import os
import sys

на все вопросы по коду писать ниже отвечу на все

По дате
По рейтингу
Аватар пользователя
Просветленный
6мес
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
 import telebot 
import sqlite3 
import logging 
import os 
import sys 
 
# Настройка логирования 
logging.basicConfig(level=logging.INFO) 
 
# Ваш токен бота 
TOKEN = 'YOUR_BOT_TOKEN_HERE' 
 
bot = telebot.TeleBot(TOKEN) 
 
@bot.message_handler(commands=['проверить']) 
def handle_check(message): 
    chat_id = message.chat.id 
    try: 
        chat_info = bot.get_chat(chat_id) 
        if chat_info.type in ['group', 'supergroup']: 
            try: 
                # Получаем список администраторов группы 
                administrators = bot.get_chat_administrators(chat_id) 
                 
                # Ищем владельца группы (создателя) 
                chat_owner = None 
                for admin in administrators: 
                    if admin.status == 'creator': 
                        chat_owner = admin.user 
                        break 
                 
                if chat_owner: 
                    bot.reply_to(message, f"Владелец группы: {chat_owner.first_name}") 
                else: 
                    bot.reply_to(message, "Владелец группы не найден.") 
             
            except telebot.apihelper.ApiException as e: 
                logging.error(f"Error retrieving chat owner: {e}") 
                bot.reply_to(message, "Ошибка: не удалось получить владельца группы. Возможно, у бота нет доступа.") 
            except Exception as e: 
                logging.exception(f"An unexpected error occurred: {e}") 
                bot.reply_to(message, "Произошла неизвестная ошибка.") 
        else: 
            bot.reply_to(message, "Команда доступна только в группах и супергруппах.") 
    except telebot.apihelper.ApiException as e: 
        logging.error(f"API Error: {e}") 
        bot.reply_to(message, f"Ошибка доступа к информации о группе: {e}") 
    except Exception as e: 
        logging.exception(f"An unexpected error occurred: {e}") 
        bot.reply_to(message, "Произошла неизвестная ошибка.") 
 
# Запуск бота 
if __name__ == '__main__': 
    try: 
        logging.info("Бот запущен.") 
        bot.infinity_polling() 
    except KeyboardInterrupt: 
        logging.info("Бот остановлен пользователем.") 
    except Exception as e: 
        logging.exception(f"Произошла ошибка: {e}")