Ошибки python при получении списка участников

Я пытаюсь получить весь список участников, все работает нормально с приведенным ниже кодом, но иногда получаю сообщение об ошибке: UnicodeEncodeError: 'UCS-2' codec can't encode characters in position 11-11: Non-BMP character not supported in Tk

Итак, как это игнорировать и получить список участников.

server = bot.get_server(id="xxxxxxxxxxxx")
if server:
    for member in server.members:
        print('name: {}'.format(member.name) )
        print('id: {}'.format(member.id) )

Возможный дубликат Кодек UCS-2 не может кодировать символы в позиции 1050-1050

Patrick Haugh 13.09.2018 18:43

Проблема не в вашем коде, IDLE не может отображать некоторые символы. Вы можете удалить эти символы или переключиться на другой способ выполнения кода.

Patrick Haugh 13.09.2018 18:44
1
2
65
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам следует использовать try и except.

Причина ошибки - кодировка "списка участников", поэтому попробуйте использовать это:

server = bot.get_server(id="xxxxxxxxxxxx")
if server:
    for member in server.members:
        try:
            print('name: {}'.format(member.name) )
            print('id: {}'.format(member.id) )
        except UnicodeEncodeError:
            # do somthing
            pass

Надеюсь это поможет!

Я уже пробовал это, но он останавливает код посередине, но не продолжает работу в оставшемся списке.

Demotry 13.09.2018 18:33

Я переместил tryexcept в цикл for

Moshe Slavin 13.09.2018 18:43

Другие вопросы по теме