smtplib не может подключиться к почтовому оружию - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь отправить электронное письмо на Python, но когда я пытаюсь использовать smtplib, оно просто зависает до истечения времени ожидания. Я уверен, что я либо упускаю что-то очевидное, либо это вызвано проблемой брандмауэра. Это минимальный код, который воспроизводит проблему для меня

from smtplib import SMTP
smtp = SMTP("smtp.mailgun.org", port=25, local_hostname=None, timeout=30)

Я что-то пропустил? Или есть какой-нибудь способ сказать smtp не проверять SSL / TLS?

Если я использую запросы, я могу получить mailgun для отправки почты без проблем:

import requests

key = 'MY_API_KEY'
recipient = 'recipient@domain.com'
domain = 'sandboxblablablaredacted.mailgun.org

request_url = r'https://api.mailgun.net/v3/{domain}/messages'
request = requests.post(request_url, 
                        auth=('api', key), 
                        data={
                            'from': 'email@address.com',
                            'to': recipient,
                            'subject': 'Hello',
                            'text': 'Hello from Mailgun'
                        },
                        verify=False,
                       )

print(f'Status: {request.status_code}')
print(f'Body:   {request.text}')

обратите внимание на verify=False. Любые предложения о том, почему smtplib не будет работать?

...