Таймаут Python imap при подключении к Gmail из учетной записи общего хостинга

Я пытаюсь добавить скрипт Python в общую учетную запись веб-хостинга, и я не могу получить даже самые простые скрипты для установления действительного подключения imap к gmail. В качестве тестового примера я создал следующий скрипт:

import imaplib
conn = imaplib.IMAP4_SSL("imap.gmail.com", 993)
conn.login(<EMAIL_ADDRESS>, <PASSWORD>)

Это производит следующий вывод:

Traceback (последний вызов был последним):
Файл "imapTest.py", строка 2, в? conn = imaplib.IMAP4_SSL("imap.gmail.com", 993) Файл "/usr/lib64/python2.4/imaplib.py", строка 1101, в init IMAP4. Файлinit(self, host, port) "/usr/lib64/python2.4/imaplib.py", строка 160, в файле init self.open (host, port) "/usr/lib64/python2.4/imaplib. py ", строка 1113, в открытом файле self.sock.connect((host, port)) File "", строка 1, в файле connect socket.error: (110, 'Тайм-аут соединения')

Как мне решить проблему? Возможно ли, что мой хостинг-провайдер блокирует исходящие запросы imap?

1 ответ

Решение

TELNET - это всегда хороший универсальный инструмент тестирования TCP, который доступен в большинстве операционных систем.

Можете ли вы TELNET на imap.gmail.com, порт 993, из оболочки на вашем хосте и получить открытое TCP-соединение? Если нет, я бы начал говорить с хостом о том, блокируют ли они этот трафик или нет.

Редактировать:

Чтобы проверить подключение к произвольному порту TCP с помощью TELNET, вам нужно указать номер порта в команде TELNET, например. Для порта 993, например:

telnet imap.gmail.com 993

Если вы не укажете номер порта, предполагается порт по умолчанию для TELNET, порт 23.

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