Как получить ссылку на фото профиля пользователя Telegram?
Как получить ссылку на фото профиля пользователя Telegram? Пробовал с помощью метода getUserProfilePhotos, однако получаю ошибку "400. Description: Bad Request: user not found". В качестве аргумента передаю ID пользователей, которые хотя бы раз писали боту. Есть какие-то ограничения на этот метод? Существует возможность получить фото профиля только определенных пользователей? Использую библиотеку pyTelegramBotAPI.
Где 0 - первая или же основная фотография в профиле, 2 - размер аватарки (постоянная нумерация 0..2, от меньшего к большему). Код не оптимизирован к её отсутствию.
Этот код полностью рабочий, почему у Вас пользователь не найден, хотя он писал боту. Проверил со статичным id пользователя, который написал боту: работает. Если не написать, то ошибка аналогичная вашей. Если бота заблокировать, то возвращается пустой лист
Прикольный вроде..., я в цикле проверял все ID пользователей, которые писали боту. bot.get_user_profile_photos(user_id=ID)
где ID - идентификатор пользователя, который беру из своей БД.
Из всех ID в БД, только не возвращает ошибку мой ID.
Вы написали про статичный ID, может в этом проблема?
Семен, У меня два аккаунта, сначала проверил именно этот код, потом забил "намертво" в коде id второго аккаунта, который ещё не писал боту, выявил похожую ошибку. Потом написал, с основного также попробовал получить аватарку второго аккаунта и всё получилось. Заблокировал со второго аккаунта - получил пустой список на первом. По идее у Вас из БД точно так же должно работать, как во втором случае.
Попробуйте написать ещё функцию, где ловите "свежих" пользователей, может быть это поможет.