Belirli bir ölçütle eşleşen belirli e-postaları otomatik olarak başka bir e-postaya yönlendiren bir komut dosyası oluşturmaya çalışıyorum.Bir e-postayı python ile iletme smtplib
imaplib ve e-postalarını kullanarak mesajların indirilmesini ve ayrıştırılmasını sağladım, ancak tüm bir e-postayı başka bir adrese nasıl yönlendireceğimi anlayamıyorum. Sıfırdan yeni bir mesaj oluşturmam gerekiyor mu yoksa eski olanı değiştirip tekrar gönderebilir miyim? İşte
Ben bugüne kadar ne var (istemci bir imaplib.IMAP4 bağlantısıdır ve kimliği bir mesaj kimliğidir): Ben bakımından yapıyor olması gerekir biraz daha karmaşık bir şey var eminimimport smtplib, imaplib
smtp = smtplib.SMTP(host, smtp_port)
smtp.login(user, passw)
client = imaplib.IMAP4(host)
client.login(user, passw)
client.select('INBOX')
status, data = client.fetch(id, '(RFC822)')
email_body = data[0][1]
mail = email.message_from_string(email_body)
# ...Process message...
# This doesn't work
forward = email.message.Message()
forward.set_payload(mail.get_payload())
forward['From'] = '[email protected]'
forward['To'] = '[email protected]'
smtp.sendmail(user, ['[email protected]'], forward.as_string())
mesajın MIME içeriğine. Elbette mesajın tamamını iletmenin basit bir yolu var mı? Ben POP3 yoluyla mesajlarını indirmek
# This doesn't work either, it just freezes...?
mail['From'] = '[email protected]'
mail['To'] = '[email protected]'
smtp.sendmail(user, ['[email protected]'], mail.as_string())
Burada herhangi bir belirleme yapmak için çok fazla eksik içerik var. Özellikle, standart smtplib kullanıyor musunuz? Python'un hangi versiyonu. Smtp nerede başlatılır, connect() ed? Uygun bir HELO yanıtı aldınız mı? – msw
Standart smtplib, python2.6.4. smtplib istemcisi çalışıyor - smtp'nin son argümanı olarak bir dizeyi ileterek basit metin e-postaları gönderebilirim. Sadece indirilmiş bir mesajın tüm MIME içeriğini yeni bir adrese göndermek için basit bir yol bulmak istiyorum. – robbles