Tệp đính kèm email Python;

Tệp đính kèm email là tệp máy tính được gửi cùng với thông báo email. Tệp có thể được gửi dưới dạng một tin nhắn riêng biệt cũng như một phần của tin nhắn mà nó được đính kèm. Lớp Tệp đính kèm được sử dụng với lớp lớp MailMessage. Tất cả các tin nhắn bao gồm một cơ thể. Ngoài nội dung, bạn có thể muốn gửi các tệp bổ sung. Chúng được gửi dưới dạng tệp đính kèm và được biểu diễn dưới dạng thể hiện của lớp Tệp đính kèm. Bạn có thể gửi bất kỳ số lượng tệp đính kèm nào nhưng kích thước của tệp đính kèm bị giới hạn bởi máy chủ thư. Ví dụ: Gmail không hỗ trợ kích thước tệp lớn hơn 10MB

Thêm tệp đính kèm

Để đính kèm tệp đính kèm vào email, vui lòng làm theo các bước sau

  1. Tạo một thể hiện của lớp lớp MailMessage
  2. Tạo một thể hiện của lớp Đính kèm
  3. Tải tệp đính kèm vào phiên bản Tệp đính kèm
  4. Thêm thể hiện Tệp đính kèm vào thể hiện của lớp MailMessage

Đoạn mã sau chỉ cho bạn cách thêm tệp đính kèm vào email

Ở trên, chúng tôi đã mô tả cách thêm tệp đính kèm vào email của bạn với Aspose. E-mail. Phần tiếp theo cho biết cách xóa tệp đính kèm và hiển thị thông tin về chúng trên màn hình

Xóa tệp đính kèm

Để xóa tệp đính kèm, hãy làm theo các bước dưới đây

  • Tạo một thể hiện của lớp Đính kèm
  • Tải tệp đính kèm trong phiên bản của lớp Tệp đính kèm
  • Thêm tệp đính kèm vào thể hiện của lớp MailMessage
  • Xóa các tệp đính kèm khỏi thể hiện của lớp Tệp đính kèm bằng thể hiện của lớp MailMessage

Đoạn mã sau chỉ cho bạn cách xóa tệp đính kèm

Hiển thị tên tệp đính kèm

Để hiển thị tên tệp đính kèm, hãy làm theo các bước sau

  1. Lặp lại các tệp đính kèm trong email và
    1. Lưu từng tệp đính kèm
    2. Hiển thị tên của từng tệp đính kèm trên màn hình

Đoạn mã sau hướng dẫn bạn cách hiển thị tên tệp đính kèm trên màn hình

Chủ đề này giải thích cách trích xuất các đối tượng nhúng từ tệp email. Đối tượng được nhúng là đối tượng được tạo bằng một ứng dụng được đính kèm trong tài liệu hoặc tệp được tạo bởi ứng dụng khác. Ví dụ: bảng tính Microsoft Excel có thể được nhúng vào báo cáo Microsoft Word hoặc tệp video có thể được nhúng vào bản trình bày Microsoft PowerPoint. Khi một tệp được nhúng, thay vì được chèn hoặc dán vào một tài liệu khác, tệp đó sẽ giữ nguyên định dạng ban đầu của nó. Tài liệu nhúng có thể được mở trong ứng dụng gốc và sửa đổi. Để trích xuất một đối tượng được nhúng từ một email, hãy làm theo các bước sau

Để gửi e-mail có nội dung hỗn hợp, yêu cầu đặt tiêu đề Kiểu nội dung thành nhiều phần/hỗn hợp. Sau đó, các phần văn bản và tệp đính kèm có thể được chỉ định trong các ranh giới

Một ranh giới được bắt đầu bằng hai dấu gạch ngang, theo sau là một số duy nhất, không thể xuất hiện trong phần thông báo của e-mail. Ranh giới cuối cùng biểu thị phần cuối cùng của e-mail cũng phải kết thúc bằng hai dấu gạch nối

Các tệp đính kèm phải được mã hóa bằng hàm pack("m") để có mã hóa base64 trước khi truyền

Xin chào mọi người, Hôm nay chúng ta sẽ học cách gửi tệp hoặc tệp đính kèm vào email bằng Python. Đó là một trong những thứ thú vị nhất có thể được thực hiện bằng một số thư viện Python. Chúng tôi sẽ sử dụng “smtplib” được bao gồm trong Python cùng với một số thư viện bên ngoài để đạt được điều này

Vậy hãy bắt đầu

Nhập thư viện để gửi tệp đính kèm với email

Chúng tôi sẽ nhập “smtplib” để tạo một phiên bản của Giao thức chuyển thư đơn giản cho phép chúng tôi gửi thư của mình

Nếu chúng tôi gửi thư mà không có bất kỳ tệp nào, điều này là đủ, bạn có thể tham khảo Gửi email này bằng SMTP trong Python. Tuy nhiên, vì thư của chúng tôi chứa một tệp, chúng tôi sẽ phải bao gồm một số thư viện khác như được đề cập bên dưới

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.base import MIMEBase
from email import encoders

Ghi chú

Vui lòng lưu ý các điểm sau để mã đã cho hoạt động bình thường mà không bị gián đoạn

  • truy cập “https. //tài khoản của tôi. Google. com/lesssecureapps” và BẬT nó
  • Tệp được gửi và mã python của bạn phải nằm trong cùng một thư mục
  • Chúng tôi đang gửi thư bằng Gmail có số cổng 587, một số trang web khác sẽ có số cổng khác

Bây giờ, chúng ta sẽ thảo luận ngắn gọn về tất cả các bước của chương trình python

  • Lưu trữ địa chỉ email của người gửi và người nhận
    sender_email = "[email protected]"
    receiver_email = "[email protected]"
  • Tạo một thể hiện của MIMEMultipart
    message = MIMEMultipart()
  • Chỉ định người gửi_email, người nhận_email và chủ đề thư của chúng tôi
    message["From"] = sender_email
    message['To'] = receiver_email
    message['Subject'] = "sending mail using python"
  • Vì chúng tôi phải gửi tệp “doc. txt”,  nó được mở ở chế độ chỉ đọc ở định dạng nhị phân
    file = "doc.txt"
    attachment = open(file,'rb')

    Nếu tệp của bạn không có trong thư mục chứa chương trình Python, bạn sẽ phải đặt vị trí tệp chính xác của mình
    ví dụ. file = “file_name”
    attachment = open(“file location”,’rb’)

  • Tạo một thể hiện của MIMEBase
    obj = MIMEBase('application','octet-stream')
  • Nói một cách đơn giản, tải trọng là tệp mà chúng tôi đang gửi thư và ở đây tải trọng đang được mã hóa
    obj.set_payload((attachment).read())
    encoders.encode_base64(obj)
    obj.add_header('Content-Disposition',"attachment; filename= "+file)
  • Đính kèm 'obj' vào thông điệp của chúng ta
    message.attach(obj)
  • Chuyển đổi tin nhắn thành một chuỗi giống như được đưa ra dưới đây. ________số 8
  • Phiên SMTP được tạo và TLS (Bảo mật lớp truyền tải) được bắt đầu, TLS được sử dụng để bảo mật kết nối và mật khẩu chính xác phải được cung cấp để phiên bắt đầu và xác thực phù hợp
    email_session = smtplib.SMTP('smtp.gmail.com',587)
    email_session.starttls()
    email_session.login(sender_email,'password')

    mật khẩu -> mật khẩu id email của bạn

  • Gửi thư
    sender_email = "[email protected]"
    receiver_email = "[email protected]"
    0
  • Kết thúc phiên
    sender_email = "[email protected]"
    receiver_email = "[email protected]"
    1
  • Dưới đây là chương trình Python hoàn chỉnh của chúng tôi để gửi tệp cùng với email.
    sender_email = "[email protected]"
    receiver_email = "[email protected]"
    2

    Sau khi thực thi thành công mã này, thư chứa tệp của bạn sẽ được gửi đến người nhận và dòng chữ “THƯ CỦA BẠN ĐÃ ĐƯỢC GỬI THÀNH CÔNG” được in trên thiết bị đầu cuối của bạn