Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.01.2021, 00:38   #1
Ilya221122
 
Регистрация: 09.01.2021
Сообщений: 6
По умолчанию Проблема с получением Имени ВК

Здравствуйте 3-ий раз).
Смотрел тутор по использованию имени пользователя отправителя в сообщении беседы для Бота.

Вылезает такая ошибка:
Код:
Traceback (most recent call last):
  File "C:\Users\Reals\Desktop\BFV\bot.py", line 26, in <module>
    name = get_name(from_id)
  File "C:\Users\Reals\Desktop\BFV\bot.py", line 12, in get_name
    sender_info = getting_api.users.get(users_ids = from_id)[0]
IndexError: list index out of range
Вот код:
Код:
import vk_api 
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType

token = 'мой токен'
authorize = vk_api.VkApi(token = token) 
longpoll = VkBotLongPoll(authorize, group_id=айди группы) 
getting_api = authorize.get_api()

def sender(id, message):
    authorize.method('messages.send', {'chat_id': id, 'message': message, 'random_id': 0})
def get_name(from_id):
    sender_info = getting_api.users.get(users_ids = from_id)[0]
    full_name = sender_info.get('first_name') + ' ' + sender_info['last_name']
    return full_name

logs = 1 
beta = False 
bw = []
prefix = ''

for event in longpoll.listen():
        if event.type == VkBotEventType.MESSAGE_NEW and event.from_chat and event.message.get('text') !='':
            msg = event.message.get('text')
            id = event.chat_id 
            from_id = event.message.get('from_id')
            name = get_name(from_id)

            if msg == 'привет':
                sender(id, f'@id{event.user_id} ({name}), приветствую.\n Напиши help для подробной помощи')
                if logs == 1:
                    print(f'выполнена команда "{msg}"')
Ilya221122 вне форума Ответить с цитированием
Старый 13.01.2021, 19:53   #2
Ilya221122
 
Регистрация: 09.01.2021
Сообщений: 6
По умолчанию

Ошибку нашёл userS_ids
Ilya221122 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с получением IP адреса helldog Работа с сетью в Delphi 2 27.12.2011 20:03
Проблема с получением страницы shvabrin Работа с сетью в Delphi 1 28.11.2011 22:49
Странности с получением имени диска свр Общие вопросы Delphi 8 20.10.2011 18:26
Проблема с получением страницы lukinjj PHP 2 18.07.2010 21:03
Проблема с получением имени zumm Общие вопросы Delphi 3 14.05.2010 13:06