#python #imap
Вопрос:
Я использую IMAP для получения электронных писем. Это прекрасно работает в моем блокноте jupyter.
imap = imaplib.IMAP4_SSL("imap-mail.outlook.com") # authenticate imap.login(username, password) imap.select( ('OK', [b'10760'])
Но когда я использую этот же код на своем удаленном компьютере, я не могу подключиться к IMAP.Это показывает следующую ошибку.
OSError: [Error 97] Address not supported by protocol
Кто — нибудь может понять, в чем здесь ошибка?
Комментарии:
1. Похоже, что хост только для IPv6 и устройство только для IPv4 (или наоборот).
2. Есть ли какой-либо способ преодолеть эту проблему?
3. Вероятно, вам захочется устранить неполадки в средствах разрешения имен вашей операционной системы (или, если это Windows, замените ее, если сможете).
4. Это Office365, который поддерживает как v4, так и v6. Мое первое предположение состоит в том, что на одном из хостов наполовину включен IPv6, т. Е. разрешение DNS возвращает адреса как v4, так и v6, а некоторые вредоносные программы используют только первый возвращенный адрес и не имеют IPv6. Угадывание:
telnet -4 imap-mail.outlook.com 143
работает,telnet -6 imap-mail.outlook.com 143
не работает. Если это так, то решение состоит в том, чтобы завершить включение IPv6. Другой способ-починить дерьмо.