How to use Python scripts to send and receive emails in Linux
In Linux systems, we can use Python scripts to send and receive emails. Python's smtplib and imaplib modules provide corresponding functions.
1. Email sending
To implement the email sending function, you first need to prepare the sender’s email address and SMTP server related information. The following is a simple sample code:
import smtplib from email.mime.text import MIMEText def send_email(): # 发送方的邮箱地址和授权码 sender_email = "your_email@gmail.com" sender_password = "your_password" # 接收方的邮箱地址 receiver_email = "recipient_email@gmail.com" # 邮件主题和内容 subject = "Hello from Python Script" body = "This is a test email sent from a Python script." # 创建邮件对象 message = MIMEText(body, "plain") message["Subject"] = subject message["From"] = sender_email message["To"] = receiver_email # 发送邮件 try: server = smtplib.SMTP("smtp.gmail.com", 587) server.starttls() server.login(sender_email, sender_password) server.sendmail(sender_email, receiver_email, message.as_string()) print("Email sent successfully") except Exception as e: print("Failed to send email. Error:", str(e)) finally: server.quit() send_email()
In the above code, we use Gmail's SMTP server to send emails. You can replace it with other SMTP servers as needed, and pay attention to changing the corresponding port number.
2. Email Reception
To implement the email reception function, you need to prepare the recipient's email address, IMAP server information and login credentials. The following is a simple sample code:
import imaplib def receive_email(): # 接收方的邮箱地址和授权码 email_address = "recipient_email@gmail.com" email_password = "your_password" try: # 连接到IMAP服务器 mailbox = imaplib.IMAP4_SSL("imap.gmail.com") mailbox.login(email_address, email_password) # 选择邮箱 mailbox.select("INBOX") # 搜索并获取最新的邮件 result, data = mailbox.search(None, "ALL") latest_email_id = data[0].split()[-1] result, data = mailbox.fetch(latest_email_id, "(RFC822)") # 解析邮件内容 email_text = data[0][1].decode("utf-8") print("Received email: ", email_text) except Exception as e: print("Failed to receive email. Error:", str(e)) finally: mailbox.close() mailbox.logout() receive_email()
In the above code, we also use Gmail's IMAP server to receive emails. It can also be replaced with other IMAP servers as needed.
The above are the basic steps and code examples for using Python scripts to send and receive emails in Linux. Through these codes, we can flexibly send and receive emails in Linux systems. Hope this helps!
The above is the detailed content of How to use Python scripts to send and receive emails in Linux. For more information, please follow other related articles on the PHP Chinese website!