2016-07-04 39 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.commail.google.com

+0

您的防火牆或ISP仍可能阻止SMTP端口。 – tripleee

+0

@tripleee我還沒有聽說過防火牆或ISP阻止電子郵件......這太瘋狂了。 OP的情況可能不是這樣。我假設OP可以在他的網絡上訪問他的電子郵件。 – u8y7541

+0

作爲一種反垃圾郵件措施,出站SMTP與家庭消費者網絡阻止幾乎相同。由於垃圾郵件製造者(以及)也會中毒,因此基本上無法在家庭ADSL上運行郵件服務器。目前,通過身份驗證的SMTP接管不同的端口號),這不是一個問題,但如果您測試需要端口25的代碼,則無法工作。 – tripleee

相關問題