2016-07-04 1 views
0
import smtplib 

fromadd = '[email protected]' 
to = fromadd 
data = 'hello' 

server = smtplib.SMTP('www.gmail.com') 
server.ehlo() 
server.starttls() 
server.set_debuglevel(1) 
server.login(fromadd,'pwd') 
server.sendmail(fromadd, to, data) 
server.quit() 

в программе выше, я всегда получал OSError: [Errno 101] Сеть является недостижимым сообщением об ошибке на моем экране, когда я выполняю ее, почему это происходит и как ее исправить?Почему я получаю сообщение о недоступности сети в моей программе smtp?

+0

Потому что 'www.gmail.com' не принимает электронные письма (или даже smpt соединения). – marcelm

+0

Я надеюсь, что это не ваш настоящий адрес электронной почты, xD – u8y7541

ответ

0

В вашей программе вы сообщаете об этом, чтобы подключиться к www.gmail.com, но этот домен не является почтовым сервером, как я и @marcelm заметили. Попробуйте использовать только gmail.com или mail.google.com.

+0

Ваш брандмауэр или интернет-провайдер могут блокировать SMTP-порт. – tripleee

+0

@tripleee Я не слышал о брандмауэре или интернет-провайдере, блокирующем электронную почту ... это безумие. Этого не может быть и для ОП. Я предполагаю, что OP может получить доступ к своей электронной почте в своей сети. – u8y7541

+0

Исходящий SMTP в значительной степени универсально заблокирован от домашних блоков netblocks в качестве меры защиты от спама. В основном вы не можете запускать почтовый сервер на домашнем ADSL, потому что спамеры отравлены так хорошо (тоже). В эти дни, когда аутентифицированный SMTP перехватывает другой номер порта), это меньше проблема, но если вы проверите код, которому нужен порт 25, он не сработает. – tripleee

 Смежные вопросы

  • Нет связанных вопросов^_^