IMAP — способ читать почту из любой программы: почтовый клиент на ПК, телефон или Python-скрипт.
| IMAP сервер | imap.zick-mail.casa |
|---|---|
| IMAP порт | 993 (SSL/TLS) |
| Логин | Полный email-адрес |
| Пароль | Из txt-файла после покупки |
Адрес может быть на любом домене сервиса. Сервер IMAP один для всех — imap.zick-mail.casa
В Apple Mail и Outlook принцип тот же — параметры одинаковые.
Сразу учтите: автоматическое определение настроек не сработает. Адреса мы выдаём на разных доменах, а IMAP-сервер у нас всегда один — imap.zick-mail.casa. Поэтому при добавлении ящика нажимайте «Настройка вручную», а не оставляйте автоматический режим.
| Сервер входящей (IMAP) | imap.zick-mail.casa |
|---|---|
| Порт | 993 |
| Защита соединения | SSL/TLS |
| Аутентификация | Обычный пароль |
| Имя пользователя | Полный адрес почты |
| Сервер исходящей (SMTP) | — |
Если Thunderbird не даёт сохранить аккаунт без SMTP — впишите туда любой рабочий сервер (например, Gmail).
Читает последнее непрочитанное письмо и достаёт 6-значный код:
import imaplib, email, re, sys
def get_code(addr, password):
m = imaplib.IMAP4_SSL("imap.zick-mail.casa", 993)
m.login(addr, password)
m.select("INBOX")
typ, ids = m.search(None, "ALL")
if not ids[0]:
return None
last = ids[0].split()[-1]
typ, data = m.fetch(last, "(RFC822)")
msg = email.message_from_bytes(data[0][1])
body = msg.get_payload(decode=True) or b""
body = body.decode(errors="ignore")
m = re.search(r"\b\d{6}\b", body)
return m.group(0) if m else None
if __name__ == "__main__":
addr, password = sys.argv[1], sys.argv[2]
print(get_code(addr, password))
Скачать script.py