קליינט SMTP ב Python - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

קליינט SMTP ב Python


Jaman

Recommended Posts

התחלתי לכתוב קליינט פשוט ל STMP ב python, אבל מהר מאוד נתקלתי בבעיה.

from socket import *
from string import *
import os

s = socket(AF_INET, SOCK_STREAM)
server = "out.bezeqint.net"
port = 25
try:
s.connect((server, port))
except:
print "connection failed!"
exit(1)


data = s.recv(1000)
code = split(data, " ", 1)[0]
ok = code == "220"
if not ok :
print "error connecting to server"
exit(1)

compname = os.environ['COMPUTERNAME']

s.sendall("HELO " + compname)
data = s.recv(1000)
code = split(data, " ", 1)[0]
ok = code == "250"
if not ok :
print "error saying HELO to server"
s.close()
exit(1)

s.close()

הבעיה היא שהתוכנית נתקעת ב data = s.recv(1000 השני, שאחרי s.sendall("HELO " + compname.

ההשערה שלי היא ש sendall משום מה לא שולח את ההודעה לשרת, והקליינט שלי מחכה לתשובה שהשרת לא שולח בכלל.

לפני שהתחלתי לכתוב שלחתי בעזרת telnet אימייל בצורה הזו והצלחתי.

מישהו יכול לומר מהי הבעיה?

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...