Knowledgebase

Изпращане на имейл с Python [С прикачен файл] - Ново ръководство

Научете как лесно да изпращате имейли с Python, използвайки API‑то на Aspose . С библиотеката Aspose.Email for Python via .NET можете да създавате, конвертирате, изпращате, получавате или манипулирате имейл съобщения, включително формати като MSG , PST , EML , EMLX и много други файлови формати.

Изпращане на имейл с Python

Aspose.Email for Python via .NET е стабилно и мощно API за програмиране на имейли, което позволява създаване, манипулиране и конвертиране на често използвани формати на имейл съобщения без да се налага да се занимавате със сложностите на подлежащия формат. Това е лесна за използване библиотека, създадена да предостави изключителен и надежден компонент за работа с имейли. Aspose.Email for Python спестява време и усилия, като ви позволява бързо и лесно да кодирате сложна обработка на файлове със съобщения във вашите приложения.

Нашето API може да се използва за изпълнение на разнообразни задачи в приложения и може да се интегрира с всякакъв тип софтуер. Предоставяме примерен код, който помага на разработчиците да започнат работа незабавно.

Aspose.Email for Python via .NET – функции:

  • Конвертиране и визуализиране на имейл формати
  • Изпращане и получаване на често използвани имейл формати, включително прикачени файлове
  • Изтегляне на имейли от IMAP и POP3 сървъри
  • Манипулиране (създаване и актуализиране) на задачи чрез iCalendar
  • Работа с файлове за съхранение на съобщения
  • Работа с имейл прикачени файлове
  • Манипулиране на срещи или назначения, съвместими с iCalendar
  • Поддръжка на TLS и SSL
  • Поддръжка на TNEF прикачени файлове

Поддържани файлови формати:

  • MSG – формат на Microsoft Outlook и Exchange за съхранение на имейл съобщения, срещи и подобни задачи
  • PST – лични файлове за съхранение в Outlook за имейли, календари, контакти и други типове данни
  • OST – локален кеш на пощенската кутия след регистрация в Exchange Server с Microsoft Outlook
  • OFT – шаблони за имейл съобщения в Microsoft Outlook
  • EML – имейл съобщения, запазени от Outlook или сходни приложения
  • EMLX – текстов файл, разработен и внедрен от Apple
  • MBOX – използва се за събиране на електронни съобщения
  • ICS – iCalendar формат за споделяне на събития и планиране на задачи чрез имейли
  • VCF – формат за електронни визитни картички и съхранение на контактна информация
  • HTML – HyperText Markup Language – разширение за уеб страници и визуализация в браузъри
  • MHTML – архивен формат, съдържащ съдържанието на уеб страница

Създаване и задаване на съдържанието на имейл с Python

Създаване на имейл съобщение

С класа MailMessage разработчиците могат да създадат ново имейл съобщение. Този клас представлява имейл съобщение. Свойства като From, To, Subject и Body могат лесно да се зададат за създаденото съобщение.

Ще изпълним следните стъпки за създаване на нов имейл съобщение:

  1. Създаване на екземпляр от класа MailMessage
  2. Задаване на свойства на имейл съобщението
  3. Записване на имейл съобщения в различни формати, като EML, MSG и MHTML

Кодовият пример по-долу показва как да създадете нов имейл с различни свойства:
For complete examples and data files, please go to https://github.com/aspose-email/aspose-email-python-dotnet
eml = ae.MailMessage()
eml.subject = "New MailMessage created with Aspose.Email for Python"
eml.html_body = "<b>This line is in bold </b> while this is normal text"
eml.from_address = "from@domain.com"

eml.to.append(ae.MailAddress("to1@domain.com", "Recipient 1"))
eml.to.append(ae.MailAddress("to2@domain.com", "Recipient 2"))

eml.cc.append(ae.MailAddress("cc1@domain.com", "Recipient 3"))
eml.cc.append(ae.MailAddress("cc2@domain.com", "Recipient 4"))

#Save generated EML in different formats to disc
eml.save(dataDir + "CreateNewMailMessage_out.eml")
eml.save(dataDir + "CreateNewMailMessage_out.msg", ae.SaveOptions.default_msg_unicode)
eml.save(dataDir + "message_out.msg", ae.SaveOptions.default_msg)
eml.save(dataDir + "message_out.mhtml", ae.SaveOptions.default_mhtml)
eml.save(dataDir + "message_out.html", ae.SaveOptions.default_html)

Задаване на HTML съдържание на съобщението

С HtmlBody се задава HTML съдържанието на тялото на съобщението. Кодовият пример по-долу показва как да зададете HTML тялото:
# For complete examples and data files, please go to https://github.com/aspose-email/aspose-email-python-dotnet
# Declare message as MailMessage instance
eml = ae.MailMessage()

# Specify HtmlBody
eml.html_body = "<html><body>This is the HTML body</body></html>"

Задаване на алтернативен текст в имейл съобщението

Класът AlternateView определя копия на имейл съобщение в различни формати и разполага с две свойства:

  • LinkedResources – при рендериране URL‑тата в съдържанието на имейла се съпоставят и резолират спрямо URL‑тата в Content Link на всеки обект от колекцията LinkedResources
  • BaseUri – се използва от четеца на имейли за резолвиране на относителни URL‑та в тялото

Кодовият пример е по-долу:
# For complete examples and data files, please go to https://github.com/aspose-email/aspose-email-python-dotnet
# Declare message as MailMessage instance
eml = ae.MailMessage()

# Creates AlternateView to view an email message using the content specified in the //string
alternate = AlternateView.create_alternate_view_from_string("Alternate Text")

# Adding alternate text
eml.add_alternate_view(alternate)

Добавяне на прикачен файл към имейл

Ще извършим следните стъпки, за да добавим прикачен файл към имейл:

  1. Създаване на екземпляр от класовете MailMessage и Attachment
  2. Зареждане на прикачения файл в инстанцията Attachment
  3. Добавяне на инстанцията Attachment към обекта MailMessage

Кодовият пример по-долу показва как да добавите прикачен файл към имейл:
For complete examples and data files, please go to https://github.com/aspose-email/aspose-email-python-dotnet
# Create an instance of MailMessage class
message = MailMessage("sender@domain.com", "receiver@domain.com")

# Load an attachment
attachment = Attachment(dataDir + "1.txt");

# Add Multiple Attachment in instance of MailMessage class and Save message to disk
message.attachments.append(attachment);
message.add_attachment(Attachment(dataDir + "1.jpg"))
message.add_attachment(Attachment(dataDir + "1.doc"))
message.add_attachment(Attachment(dataDir + "1.rar"))
message.add_attachment(Attachment(dataDir + "1.pdf"))
message.save(dataDir + "AddEmailAttachments_out.msg", SaveOptions.default_msg_unicode)

Изпращане на имейл с Python

Aspose.Email for Python позволява изпращане на имейли чрез SMTP, POP3 и IMAP сървъри. Лесно можете да влезете в POP3 сървъри с вашите идентификационни данни (потребителско име и парола) или чрез APOP автентикация, за да извършвате операции като преглед на размера на пощенската кутия, броя съобщения, изтегляне на цялото съобщение или само заглавната част, изтриване на съобщения от сървъра и други базови POP3 команди.

Aspose.Email for Python също поддържа IMAP протокола, включително неговите команди, автентикация, избор, създаване, изтриване, заявка за папки, записване на съобщения, получаване, изтриване и манипулиране на етикети.

Изпращане на съобщения с SMTP клиент

За да изпратите имейл съобщение с Python, ще следваме следните стъпки:

  1. Създаване на екземпляр от класа MailMessage
  2. Задаване на имейл адресите на подателя и получателя в инстанцията MailMessage
  3. Задаване на съдържанието на TextBody
  4. Създаване на екземпляр от класа SmtpClient и изпращане на имейл съобщението

Кодовият пример по-долу показва как да изпратите текстов имейл с Python:
For complete examples and data files, please go to https://github.com/aspose-email/aspose-email-python-dotnet
eml = ae.MailMessage()
eml.subject = "Message with Plain Text Body"
eml.body = "This is plain text body."
eml.from_address = "from@gmail.com"
eml.to.append(ae.MailAddress("to@gmail.com", "Recipient 1"))

#Send using Smtp Client
client = SmtpClient("smtp.gmail.com", 995, "username", "password")
client.security_options = SecurityOptions.AUTO

client.send(eml)

Ако се нуждаете от помощ за вашия проект, винаги можете да се свържете с нашите Платно консултиране експерти. Нашият екип ще работи с вас, за да намери най‑подходящото решение за вашия проект, ще го внедри съобразно изискванията и ще ви предостави най‑високата стойност. Можете да разчитате на нас за вашето бъдещо развитие и растеж.