Tôi đang cố gắng gửi email bằng python. Đây là mã của tôi.Gửi email với python smtplib không hoạt động, nhầm lẫn về trường "từ"
import smtplib
if __name__ == '__main__':
SERVER = "localhost"
FROM = "[email protected]"
TO = ["[email protected]"] # must be a list
SUBJECT = "Hello!"
TEXT = "This message was sent with Python's smtplib."
# Prepare actual message
message = """\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)
# Send the mail
server = smtplib.SMTP(SERVER)
server.sendmail(FROM, TO[0], message)
server.quit()
print "Message sent!"
Thao tác này không xảy ra lỗi, nhưng không có email nào được gửi đến [email protected]
.
Câu hỏi
Một điều tôi không hiểu về mã này --- những gì hạn chế nào để tôi có khi thiết lập các lĩnh vực FROM
?
Bằng cách nào đó tôi có thể nói rằng đó là từ máy tính của tôi?
Có gì để ngăn tôi giả mạo email của người khác?
Hoặc tôi có tự do làm điều đó không?
lý do TO [0] và không TO? – sherpya
tôi nghĩ có lẽ tôi đã không được giả sử để vượt qua trong một danh sách, nhưng tôi đoán đó không phải là vấn đề. (Tôi đã thử cả hai cách, không tạo sự khác biệt) – WillHaack
nó làm việc cho tôi, in kết quả của hàm sendmail nó phải là một dict trống, cũng thử server.set_debuglevel (1) – sherpya