卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章22839本站已运行3427

如何使用Python脚本在Linux中实现邮件发送与接收

如何使用Python脚本在Linux中实现邮件发送与接收

如何使用Python脚本在Linux中实现邮件发送与接收

在Linux系统中,我们可以使用Python脚本来实现邮件的发送与接收功能。Python的smtplib和imaplib模块提供了相应的功能。

一、邮件发送
要实现邮件发送功能,首先需要准备好发送方的邮件地址和SMTP服务器的相关信息。以下是一个简单的示例代码:

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()

在上述代码中,我们使用了Gmail的SMTP服务器来发送邮件。可以根据需要替换为其他SMTP服务器,同时要注意更改相应的端口号。

二、邮件接收
要实现邮件接收功能,需要准备好接收方的邮箱地址、IMAP服务器的信息以及登录凭证。以下是一个简单的示例代码:

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()

在上述代码中,我们同样使用了Gmail的IMAP服务器来接收邮件。同样可以根据需要替换为其他IMAP服务器。

卓越飞翔博客
上一篇: Linux脚本操作的数据处理技巧与Python实现
下一篇: 返回列表

相关推荐

留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏