Python : How to parse things such as : from, 到正文,来自带有 Python 的原始电子邮件源

标签 python regex python-2.7 mod-wsgi wsgi

<分区>

原始邮件通常看起来像这样

From root@a1.local.tld Thu Jul 25 19:28:59 2013
Received: from a1.local.tld (localhost [127.0.0.1])
    by a1.local.tld (8.14.4/8.14.4) with ESMTP id r6Q2SxeQ003866
    for <ooo@a1.local.tld>; Thu, 25 Jul 2013 19:28:59 -0700
Received: (from root@localhost)
    by a1.local.tld (8.14.4/8.14.4/Submit) id r6Q2Sxbh003865;
    Thu, 25 Jul 2013 19:28:59 -0700
From: root@a1.local.tld
Subject: ooooooooooooooooooooooo
To: ooo@a1.local.tld
Cc: 
X-Originating-IP: 192.168.15.127
X-Mailer: Webmin 1.420
Message-Id: <1374805739.3861@a1>
Date: Thu, 25 Jul 2013 19:28:59 -0700 (PDT)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="bound1374805739"

This is a multi-part message in MIME format.

--bound1374805739
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

ooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooo

--bound1374805739--

所以如果我想编写一个 PYTHON 脚本来获取

From
To
Subject
Body

这是我要构建的代码还是有更好的方法?

a='<title>aaa</title><title>aaa2</title><title>aaa3</title>'

import re
a1 = re.findall(r'<(title)>(.*?)<(/title)>', a)

最佳答案

我真的不明白你的最终代码片段与任何事情有什么关系 - 在那之前你没有提到任何关于 HTML 的东西,所以我不知道你为什么突然给出一个解析 HTML 的例子(无论如何你都不应该用正则表达式来做)。

无论如何,为了回答有关从电子邮件消息中获取 header 的原始问题,Python 在标准库中包含了执行此操作的代码:

import email
msg = email.message_from_string(email_string)
msg['from']  # 'root@a1.local.tld'
msg['to']    # 'ooo@a1.local.tld'

关于Python : How to parse things such as : from, 到正文,来自带有 Python 的原始电子邮件源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17872094/

相关文章:

python - pyQt Python 中的 Q 网络访问管理器(段错误核心转储)

Python:计算一个点符合曲线的概率

python - 从按下的按钮调用时 wx.lib.pubsub.Publisher 不工作?

php - 正则表达式检查一个字符连续出现 3 次或更多次

c++ - 对 CMake find_path 提示使用正则表达式

python - 值错误 : A ELE probability distribution must have at least one bin

python - 如何设置生命周期以使用 boto3 删除 s3 存储桶下的文件夹

python - 在按钮中创建图像

python - 不使用 SET 的两个字符串列表之间的区别

python - 使用正则表达式匹配数据框中的字符串并替换 - python