/ / Cách tự động hóa email Outlook bằng Python

Cách tự động hóa email Outlook bằng Python

Khi nói về Python, thật khó để bỏ qua mức độ phổ biến của các chức năng và những gì bạn có thể đạt được chỉ với một vài đoạn mã. Ngày nay, việc gửi và nhận email là điều phù hợp nhất và tính năng tự động hóa email của Python trong Microsoft Outlook giúp mọi việc trở nên dễ dàng hơn.


Tại sao phải dành thời gian vô tận để biên dịch email trên ứng dụng email khách khi bạn có thể để Python làm việc đó cho bạn trong một phiên bản duy nhất? Nếu tò mò, bạn phải đọc tiếp để biết cách gửi email tự động từ Python bằng Microsoft Outlook.


Hoàn thành một vài điều kiện tiên quyết

Xem xét hai nền tảng chính được tham chiếu trong hướng dẫn này, đây là những điều kiện tiên quyết để kích hoạt tác vụ đơn giản nhưng hữu ích này. Để bắt đầu, hãy tải xuống và cài đặt như sau:

  • Microsoft Outlook: Bạn phải cài đặt và chạy ứng dụng MS Outlook trên hệ thống của mình. Bạn có thể sử dụng bất kỳ miền email nào với Outlook vì nó không có bất kỳ hạn chế nào về cấu hình email.
  • win32com.client: Thư viện bên thứ ba này rất cần thiết để kết nối với các ứng dụng Microsoft của bạn. Vì Microsoft Outlook là một trong những ứng dụng như vậy nên bạn cần thư viện này trong Python để kết nối với máy chủ trao đổi Outlook.

Microsoft Outlook là một trong những ứng dụng email lâu đời nhất và được sử dụng rộng rãi nhất, được xếp hạng trong danh sách các nhà cung cấp email phổ biến nhất sau Gmail và Yahoo. Trong hướng dẫn này, một địa chỉ Gmail được định cấu hình trong Outlook.

win32com.client là một khía cạnh không thể thiếu của mã này và bạn cần có một thư viện đầy đủ chức năng để thiết lập kết nối giữa Microsoft Outlook và Python.

Kiểm tra phiên bản win32com.client

Trước khi cài đặt, bạn có thể kiểm tra xem win32com đã được cài đặt trên máy của bạn. Một số phiên bản IDE cung cấp gói này theo mặc định. Bạn có thể kiểm tra chéo nếu nó có sẵn bằng lệnh sau.

 python -m pip show pywin32 

Nếu bạn gặp lỗi ‘pip’ không được công nhận là lệnh nội bộ hoặc bên ngoài trong khi chạy lệnh trên, bạn có thể cài đặt pip trên Windows, Mac và Linux để đảm bảo cài đặt thư viện của bạn liền mạch.

Sau khi chạy lệnh trên, nếu bạn nhận được số phiên bản, bạn không cần phải cài đặt lại.

Dấu nhắc lệnh Windows với mã xác minh Python

Sau đó, nếu bạn nhận được thông báo lỗi sau, bạn cần cài đặt win32com thư viện trên hệ thống của bạn:

 'pywin32' is not recognized as an internal or external command, operable program, or batch file. 

Cài thư viện win32com

Mở lời nhắc và gõ vào píp lệnh cài đặt thư viện từ cửa sổ đầu cuối.

 python -m pip install pywin32 
Lệnh Windows với các lệnh cài đặt Python

Thực hiện theo các hướng dẫn trên màn hình để hoàn tất quy trình. Bạn có thể dùng –buổi bieu diễn lệnh sau khi cài đặt để xác minh xem win32com được cài đặt thành công trên hệ thống của bạn.

 python -m pip show pywin32 

Gửi email từ Python bằng Outlook

Vì các điều kiện tiên quyết đã được giải quyết xong, đã đến lúc bắt đầu viết mã. Để bắt đầu, bạn cần nhập win32com.client thư viện bằng cách sử dụng nhập khẩu bản tường trình.

 import win32com.client 

Bây giờ bạn có thể viết mã để kết nối Python và ứng dụng email của Microsoft, Outlook.

 ol = win32com.client.Dispatch('Outlook.Application') 

Ở đâu:

  • ol: Biến mới để lưu trữ tham chiếu kết nối.
  • win32com.client: Thư viện Windows để thiết lập kết nối giữa Python và Outlook.
  • Gửi đi: Chức năng tạo kết nối.
  • Outlook.Ứng dụng: Tên này có thể được thay thế bằng bất kỳ tên ứng dụng nào của Microsoft, theo yêu cầu.
Mã Python để nhập thư viện trong Jupyter Notebook

Tiếp theo, cần xác định kích thước của thông báo email mới để Python hiểu nội dung cần được cập nhật ở đâu.

 
olmailitem = 0x0

Ở đâu:

  • olmailitem: Biến mới để lưu trữ kích thước.
  • 0x0: Kích thước của email mới trong bộ nhớ của Python.

Các chức năng của Python bật mở một mục email mới, ngay sau khi bạn xác định kích thước nội dung email.

 newmail = ol.CreateItem(olmailitem) 

Ở đâu:

  • thư điện tử mới: Biến mới để lưu trữ tham chiếu email mới.
  • ol: Tham chiếu kết nối được tạo trước đó giữa Python và Outlook.
  • CreateItem(olmailitem): Lệnh tạo bản nháp email mới.

Vì mọi email đều không đầy đủ nếu không có dòng chủ đề, bạn có thể xác định nó trong mã để Python tự động thêm nó trước khi gửi email đến người nhận. Điều này sẽ hiển thị với người nhận, vì vậy hãy cẩn thận cách bạn xác định trường hợp và nội dung.

 newmail.Subject = 'Testing Mail' 

Ở đâu:

  • thư điện tử mới: Biến để lưu trữ tham chiếu mục thư mới.
  • Môn học: Điều này có thể khác nhau, tùy thuộc vào những gì bạn muốn lấy làm chủ đề cho email của mình.

Bạn có thể thêm người nhận dự kiến ​​trong ĐếnCC từ khóa như sau:

 newmail.To = 'xyz@gmail.com'
newmail.CC = 'xyz@gmail.com'

Ở đâu:

  • Đến: Địa chỉ email của người nhận chính.
  • CC: Người nhận email đã sao chép.

Với Python, bạn có thể gửi email cho nhiều người nhận. thêm một dấu chấm phẩy (;) dấu tách giữa các ID email trong cột Đến/CC.

Cuối cùng, khi bạn xác định chủ đề và người nhận, bạn có thể thêm nội dung email vào mục thư mới trước khi gửi nó cho người nhận trong khuôn khổ ĐếnCC cột.

 newmail.Body= 'Hello, this is a test email to showcase how to send emails from Python and Outlook.' 

Để thêm tệp đính kèm vào email của bạn, bạn có thể sử dụng các lệnh sau:

 attach = 'C:\Users\admin\Desktop\Python\Sample.xlsx' 
 newmail.Attachments.Add(attach) 

Khi email đã sẵn sàng để gửi, bạn có thể sử dụng hai tùy chọn. Nếu bạn muốn xem trước email của mình trước khi gửi cho người nhận, bạn có thể sử dụng Trưng bày() lệnh như sau:

 newmail.Display() 

Bạn có thể dùng Gửi() lệnh nếu bạn muốn gửi email mà không cần xem lại trước đó.

 newmail.Send() 

Hãy nhớ rằng, bạn sẽ không thấy bản xem trước của email nếu bạn sử dụng Gửi ra lệnh trực tiếp. Sử dụng lệnh này một cách khôn ngoan nếu bạn thường xuyên thay đổi nội dung email của mình. Bạn có thể sử dụng mã Python trong một lần để nhập thư viện, thiết lập kết nối và gửi email nhanh chóng.

Đây là mã hoàn chỉnh:

 import win32com.client
ol=win32com.client.Dispatch("outlook.application")
olmailitem=0x0
newmail=ol.CreateItem(olmailitem)
newmail.Subject= 'Testing Mail'
newmail.To='xyz@gmail.com'
newmail.CC='xyz@gmail.com'
newmail.Body= 'Hello, this is a test email to showcase how to send emails from Python and Outlook.'
# newmail.Attachments.Add(attach)
newmail.Send()
Đoạn email Outlook được gửi bằng Python

Lợi ích của tự động hóa email Python

Tự động hóa email Python cho phép bạn gửi email trực tiếp từ giao diện Python của mình mà không cần mở MS Outlook. Nếu bạn là người đam mê sử dụng Python và không muốn mở ứng dụng email liên tục để nhập email, bạn có thể để ngôn ngữ lập trình làm việc đó cho mình.

Tại sao phải dành hàng giờ để thực hiện các tác vụ lặp đi lặp lại khi bạn có thể gửi email tự động bằng Python với một vài dòng mã?

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *