Python无法将消息添加到Thunderbird Mbox中

2024-06-01 02:28:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在ubuntu 16.04上使用python 2.7

我一直在使用python从我电脑上的mbox文件中读取电子邮件,这些文件是由thunderbird创建的。我现在想将消息添加到那些mbox文件中。我关闭了thunderbird,然后尝试从命令行运行python脚本。python脚本根本没有给我任何错误消息,但是当我打开thunderbird时,我没有看到任何新消息被添加到mbox文件中

我确实想看看我是否有权限问题。我将linux中mbox文件的权限更改为:查看内容=任何人,更改内容=任何人,执行=任何人

我在sudo模式下运行python脚本

以下是我尝试过的代码:

mboxfile = "/home/jan/.thunderbird/gkzlvipz.default/ImapMail/mail.jan.info/INBOX"

print("opening: "+mboxfile)

mbox = mailbox.mbox(mboxfile)

mbox.lock()

try:

    print("Trying:Begins")

    msg = mailbox.mboxMessage()

    msg.set_unixfrom('author Sat Feb  7 01:05:34 2020')

    msg['From'] = 'info@jan.info'

    msg['To'] = 'ljan@gmail.com'

    msg['Subject'] = 'JL Python Sample message 1'

    msg.set_payload('This is the body.\nFrom (should be escaped).\nThere are 3 lines.\n')

    mbox.add(msg)

    mbox.flush()

    print("Trying:Ends")

except Exception as e:

    # Just print(e) is cleaner and more likely what you want,

    # but if you insist on printing message specifically whenever possible...

    Print("Exception - FAILED")

    if hasattr(e, 'message'):

        print("Error 1: " + e.message)

    else:

        print("Error 2: " + e)    

finally:

    print("Finally")

    mbox.unlock()

sys.exit("PYTHON ENDS: TEST EMAIL SEND FINISHED")

运行上述脚本时得到的输出是:

*** PYTESTTHUNDERBIRD BEGINS ***
opening: /home/jan/.thunderbird/gkzlvipz.default/ImapMail/mail.jan.info/INBOX

Trying:Begins

Trying:Ends

Finally

PYTHON ENDS: TEST EMAIL SEND FINISHED

我不知道我做错了什么,为什么没有收到任何错误消息

我将非常感谢您的帮助

谢谢


Tags: 文件info脚本消息权限内容message错误