Hướng dẫn how do i send an email using python 2022? - làm cách nào để gửi email bằng python 2022?
Bạn cần gì để gửi email với Python? Một số chương trình cơ bản và kiến thức web cùng với các kỹ năng Python cơ bản. Chúng tôi cho rằng bạn đã có một ứng dụng web được xây dựng với ngôn ngữ này và bây giờ bạn cần mở rộng chức năng của nó với thông báo hoặc các tùy chọn gửi email khác. Show
Với nhiều ví dụ về mã, trong hướng dẫn năm 2022 này, chúng tôi sẽ hướng dẫn bạn các bước cơ bản để gửi các loại email khác nhau qua máy chủ SMTP (Giao thức chuyển thư đơn giản) bằng Python. Lưu ý: Viết và thử nghiệm trên Python 3.6.9. Xem thêm các kho lưu trữ liên quan đến Python trên GitHub. Những tùy chọn gửi email nào với Python có?Hai cách chính để gửi email trong Python đang sử dụng phương thức SMTP và phương pháp thứ hai là dịch vụ email giao dịch. Hãy cùng xem xét kỹ hơn về hai người và giải nén cách họ làm việc. & NBSP; Gửi email với Python và SMTPTin tốt đầu tiên về Python là trong thư viện tiêu chuẩn của nó, có một mô-đun SMTPLIB tích hợp được sử dụng để gửi email qua kết nối SMTP. Mô -đun sử dụng giao thức RFC 821 tiêu chuẩn, do đó không cần cài đặt thêm hoặc thủ thuật. & NBSP; Gửi email với Python bằng Dịch vụ Email Giao dịchNếu bạn quyết định thiết lập chức năng gửi trong ứng dụng Python của bạn mà không cần SMTP tích hợp, bạn có thể tích hợp API email giao dịch của bên thứ ba. Một trong những lý do chính để đi theo con đường này là nếu tỷ lệ phân phối mạnh là một yếu tố quan trọng đối với bạn. Hầu hết các dịch vụ API của bên thứ ba đều có các công cụ phân tích và cung cấp các cơ hội khả năng mở rộng mà bạn có thể cần khi dự án của bạn phát triển. Gửi email trong Python: Hướng dẫn từng bướcCách gửi email bằng SMTPMô-đun SMTPLIB tích hợp có thể được nhập bằng cách sử dụng câu lệnh sau: 2Để gửi email sau, hãy tạo một đối tượng SMTP: 3Chi tiết tham số: & NBSP;
Đối tượng SMTP có một phương thức thể hiện có tên SendMail được sử dụng để gửi tin nhắn và có ba tham số:
4Để đảm bảo rằng mô -đun email đã được nhập đúng và nhận mô tả đầy đủ về các lớp và đối số của nó, hãy nhập vào phiên Python tương tác: 5Tham khảo tài liệu Python để xem xét thêm phần còn lại của các đối tượng SMTP (ví dụ: ____ 16; ____ ____ 17, v.v.) và cách áp dụng chúng. Dưới đây bạn có thể tìm thấy một ví dụ về tập lệnh Python đơn giản cho thấy cách người ta có thể gửi email từ SMTP cục bộ.
Tuy nhiên, mã này sẽ hoạt động. Đầu tiên, bạn sẽ cần một máy chủ SMTP hoạt động thực tế. Thứ hai, hầu hết người nhận từ chối email từ các nguồn không đáng tin cậy. Trên hết, nhận được tất cả các xác nhận và chứng nhận có liên quan cho các máy chủ khác phê duyệt email của bạn là không dễ dàng. Sử dụng API của bên thứ ba để gửi chức năng trong ứng dụng Python của bạn là cách tốt nhất để thực hiện nó. Một giống như API email MailTrap, trong đó công việc tẻ nhạt đảm bảo email của bạn đã được gửi đã được thực hiện và không cần thiết lập máy chủ SMTP của riêng bạn. Cách gửi email bằng API emailVới sự trợ giúp của các phân tích có thể hành động, API email của chúng tôi giúp các nhà phát triển giành quyền kiểm soát hoàn toàn khả năng gửi email của họ, cho phép gửi thông lượng gửi khoảng 10.000 email một giây. Trước khi bạn có thể gửi bất kỳ loại email nào với MailTrap, bạn sẽ cần kết nối và xác minh tên miền của mình. Kiểm tra hướng dẫn chi tiết của chúng tôi và hướng dẫn video tiền thưởng về cách thực hiện việc này.
Thử mailtrap miễn phí Làm thế nào để gửi email HTML trong Python?Trong hầu hết các trường hợp, bạn cần thêm một số định dạng, liên kết hoặc hình ảnh vào thông báo email của bạn. Chúng ta chỉ có thể đặt tất cả những thứ này với nội dung HTML. Với mục đích này, Python có gói email. & NBSP; Chúng tôi sẽ đối phó với loại tin nhắn MIME, có thể kết hợp HTML/CSS và văn bản thuần túy. Trong Python, nó được xử lý bởi mô -đun email.mime. & NBSP; Tốt hơn là viết một phiên bản văn bản và phiên bản HTML một cách riêng biệt và sau đó hợp nhất chúng với thể hiện 8. Nó có nghĩa là một thông điệp như vậy có hai tùy chọn kết xuất tương ứng. Trong trường hợp HTML được kết xuất thành công vì một số lý do, một phiên bản văn bản vẫn sẽ có sẵn. & NBSP;Input:
Output: Làm thế nào để gửi email với các tệp đính kèm?Bước tiếp theo trong việc làm chủ việc gửi email với Python là đính kèm các tệp. Các tệp đính kèm vẫn là các đối tượng MIME, nhưng chúng ta cần mã hóa chúng với mô -đun Base64 mã hóa tất cả dữ liệu nhị phân thành các ký tự ASCII. Một vài điểm quan trọng về các tệp đính kèm:
Trong email giao dịch, các tệp PDF được sử dụng thường xuyên nhất: chúng tôi thường nhận được biên lai, vé, thẻ lên máy bay, xác nhận đặt hàng và nhiều tài liệu liên quan đến xác thực khác. Vì vậy, hãy để xem xét cách gửi thẻ lên máy bay dưới dạng tệp PDF. & NBSP; Input:
Output: Để đính kèm một số tệp, bạn có thể gọi phương thức 1 method several times.Làm thế nào để gửi email cho nhiều người nhận bằng Python?Gửi nhiều email cho những người nhận khác nhau và biến họ thành cá nhân là điều đặc biệt về email trong Python. & NBSP; Để thêm một số người nhận, bạn chỉ có thể nhập địa chỉ của họ được phân tách bằng dấu phẩy và thêm CC và BCC. Nhưng nếu bạn làm việc với gửi email hàng loạt, Python sẽ giúp bạn tiết kiệm bằng các vòng. & NBSP; Một trong những tùy chọn là tạo cơ sở dữ liệu ở định dạng .csv (chúng tôi giả sử nó được lưu vào cùng một thư mục với tập lệnh Python của bạn). & NBSP;.csv format (we assume it is saved to the same folder as your Python script). Chúng ta thường thấy tên của chúng ta trong các ví dụ giao dịch hoặc thậm chí quảng cáo. Đây là cách chúng ta có thể làm cho nó với Python. Hãy để tổ chức danh sách trong một bảng đơn giản chỉ với hai cột: tên và địa chỉ email. Nó sẽ trông giống như ví dụ sau:
Mã bên dưới sẽ mở tệp và lặp qua các hàng của nó từng dòng, thay thế {name} bằng giá trị từ cột tên tên tên. Input:
Sau khi chạy tập lệnh, chúng tôi nhận được phản hồi sau:
Output: Trong hộp thư đến MailTrap của chúng tôi, chúng tôi thấy hai tin nhắn: một cho John Johnson và một cho Peter Peterson, đã gửi đồng thời: Cách gửi email với hình ảnh? & NBSP;Hình ảnh, ngay cả khi chúng là một phần của thân thông báo email, vẫn còn đính kèm. Có ba loại trong số chúng:
Chúng tôi đã mô tả đặc thù, ưu và nhược điểm của họ và khả năng tương thích với hầu hết các ứng dụng email trong bài đăng này. & NBSP; Để thêm tệp đính kèm CID, chúng tôi sẽ tạo một thông báo MIME Multiart với thành phần mimimeMage: we will create a MIME multipart message with MIMEImage component:
Output: Hình ảnh CID được hiển thị như một phần của thông báo HTML và là một tệp đính kèm. Tin nhắn với loại hình ảnh này thường được coi là thư rác: Kiểm tra tab Analytics trong MailTrap để xem tỷ lệ thư rác và khuyến nghị để cải thiện. Trong hầu hết các trường hợp, nhiều ứng dụng email & nbsp; - Gmail nói riêng - don lồng hiển thị hình ảnh CID. Vì vậy, hãy để xem xét cách nhúng hình ảnh được mã hóa base64.how to embed a base64 encoded image. Ở đây chúng tôi sẽ sử dụng mô -đun Base64 và thử nghiệm cùng một tệp hình ảnh: and experiment with the same image file:
Output: Bây giờ hình ảnh được nhúng vào thông báo HTML và không có sẵn dưới dạng tệp đính kèm. Python đã mã hóa hình ảnh JPG của chúng tôi và nếu chúng tôi đi đến tab Nguồn HTML, chúng tôi sẽ thấy chuỗi dữ liệu hình ảnh dài trong IMG SRC. & NBSP; Gửi email với Python qua GmailBạn có thể định cấu hình máy chủ sản xuất của mình khi sẵn sàng gửi email tùy chỉnh của mình đến địa chỉ email của người nhận thực sự. Nó cũng phụ thuộc vào nhu cầu, mục tiêu và sở thích của bạn: máy chủ cục bộ của bạn hoặc bất kỳ SMTP bên ngoài. & NBSP; Một trong những tùy chọn phổ biến nhất là Gmail, vì vậy, hãy để xem xét kỹ hơn về nó. & NBSP; Chúng ta thường thấy các tiêu đề như Cách làm thế nào để thiết lập một tài khoản Gmail để phát triển. Điều đó có nghĩa là bạn sẽ tạo một tài khoản Google mới và sử dụng nó cho một mục đích cụ thể. & NBSP; Để có thể gửi email qua tài khoản Gmail của bạn, bạn cần cung cấp quyền truy cập vào nó cho ứng dụng của bạn. Bạn có thể cho phép các ứng dụng ít an toàn hơn hoặc tận dụng giao thức ủy quyền OAuth2. Nó khó khăn hơn nhưng được khuyến nghị vì lý do bảo mật. & NBSP; Hơn nữa, để sử dụng máy chủ SMTP Gmail, bạn cần biết:
Nếu bạn có xu hướng đơn giản, thì bạn có thể sử dụng Yagmail, Gmail/SMTP chuyên dụng. Nó làm cho email gửi thực sự dễ dàng. Chỉ cần so sánh các ví dụ trên với một số dòng mã sau:
Kiểm tra email với hộp cát email mailtrapKhi tạo một ứng dụng mới hoặc thêm bất kỳ chức năng nào, đặc biệt là khi thực hiện nó lần đầu tiên, nó rất cần thiết để thử nghiệm trên máy chủ thử nghiệm. Dưới đây là một danh sách ngắn gọn về các lý do:
Môi trường máy chủ SMTP thử nghiệm bắt chước công việc của máy chủ web của bên thực hiện thực. Trong các ví dụ sau, chúng tôi sẽ sử dụng hộp cát email MailTrap, cho phép các nhà phát triển thu được lưu lượng truy cập SMTP từ việc dàn dựng và kiểm tra và gỡ lỗi email trước khi họ đi ra cho người nhận thực tế. Trên hết, hộp cát email có thể giúp xác thực HTML/CSS của bạn, phân tích nội dung email và đưa ra điểm spam có liên quan. Hộp cát rất dễ thiết lập; Tất cả những gì bạn cần là sao chép thông tin đăng nhập được tạo bởi ứng dụng và dán chúng vào mã của bạn. Đây là cách nó trông như thế nào trong thực tế: 0MailTrap làm cho mọi thứ thậm chí dễ dàng hơn. Chuyển đến phần Tích hợp trong tab Cài đặt SMTP và lấy mẫu sẵn sàng sử dụng của tin nhắn văn bản đơn giản với thông tin đăng nhập MailTrap của bạn. Tùy chọn cơ bản nhất để hướng dẫn mã Python của bạn về người gửi gì cho ai là phương thức 2Instance:Đoạn mã có vẻ khá đơn giản, phải không? Hãy cùng xem xét kỹ hơn về nó và thêm một số xử lý lỗi (xem #Explanations ở giữa). Để bắt lỗi, chúng tôi sử dụng các khối thử và các khối ngoại trừ. Tham khảo tài liệu để biết danh sách các ngoại lệ ở đây. & NBSP; 1Khi bạn nhận được kết quả đã gửi trong shell, bạn sẽ thấy tin nhắn của mình trong hộp thư đến mailtrap của bạn: Nếu bạn thích làm việc trong môi trường địa phương, máy chủ gỡ lỗi SMTP cục bộ có thể là một tùy chọn. Với mục đích này, Python cung cấp một mô -đun SMTPD. Nó có tính năng DebugGingServer, sẽ loại bỏ các tin nhắn bạn đang gửi và sẽ in chúng vào stdout. Nó tương thích với tất cả các hệ thống hoạt động. Đặt máy chủ SMTP của bạn thành LocalHost: 1025 3Để chạy máy chủ email SMTP trên cổng số 25, bạn sẽ cần quyền root: 4Nó sẽ giúp bạn xác minh xem mã của bạn có hoạt động hay không và chỉ ra các vấn đề có thể xảy ra nếu có. Tuy nhiên, nó đã giành chiến thắng cho phép bạn kiểm tra cách hiển thị mẫu email HTML của bạn. Các bước tiếp theo với các email trong PythonChúng tôi đã chứng minh chỉ các tùy chọn cơ bản của việc gửi email với Python để mô tả logic và một loạt các khả năng của nó. Chúng tôi khuyên bạn nên xem xét tài liệu Python và thử nghiệm mã của riêng bạn để có kết quả tuyệt vời! Có một loạt các khung và thư viện Python khác nhau giúp tạo ra các ứng dụng thanh lịch và tận tâm hơn. Cụ thể, một số trong số họ có thể giúp cải thiện trải nghiệm của bạn với việc xây dựng chức năng gửi email: Các khung phổ biến nhất là:
Chúc may mắn, và don không quên ở bên an toàn khi gửi email của bạn! Làm cách nào để gửi email bằng Python?Thiết lập kết nối an toàn bằng smtp_ssl () và .starttls () Sử dụng thư viện smtplib tích hợp của Python để gửi email cơ bản. Gửi email với nội dung HTML và tệp đính kèm bằng gói email. Gửi nhiều email được cá nhân hóa bằng tệp CSV với dữ liệu liên hệ. Use Python's built-in smtplib library to send basic emails. Send emails with HTML content and attachments using the email package. Send multiple personalized emails using a CSV file with contact data.
Làm thế nào để bạn tự động hóa một thư điện tử trong Python?Làm thế nào để gửi email tự động với kết quả phân tích bằng Python ?.. Yêu cầu hệ thống.. Bước 1: Kết nối với Gmail và đăng nhập .. Bước 2: Gửi email văn bản đơn giản qua mã .. Bước 3: Gửi email với tệp đính kèm thông qua mã .. Bước 4: Viết chi tiết email hộp thư đến cho CSV bằng thư viện pyzmail .. Làm thế nào để tôi SMTP trong Python?Tạo và gửi một email đơn giản.. Tạo một đối tượng SMTP để kết nối với máy chủ .. Đăng nhập vào tài khoản của bạn.. Xác định tiêu đề tin nhắn và thông tin đăng nhập của bạn .. Tạo một đối tượng tin nhắn Mimemultipart và đính kèm các tiêu đề có liên quan vào nó, tức là từ, đến và chủ đề .. Đính kèm tin nhắn vào đối tượng Mimemultipart .. Làm cách nào để gửi thư từ Outlook bằng Python?Tự động hóa email.. Tạo email mới.Mã này đơn giản và dễ hiểu..... Chỉ định các thuộc tính email..... 2.1 Đặt chủ đề email..... 2.2 Đặt email máy thu..... 2.3 Thêm hình ảnh..... 2.4 Viết nội dung email..... 2.5 Thêm tệp đính kèm Excel..... Gửi email .. |