在emai中查找目标收件人

2024-09-28 19:34:39 发布

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

我正在尝试用Python获取电子邮件的收件人。在加载邮件时,使用电子邮件模块可以很好地工作,尤其可以使用“收件人”字段来了解:

import email
msg = email.message_from_string(some_message)
print "recipient: {}".format(msg['To'])

但这在很多情况下是行不通的,比如收件人是密件抄送字段。我一直在搜索地址,它似乎被编码在“接收”字段中。在

如示例所示:

^{pr2}$

解析这是了解接收者的正确方法吗?有没有办法在不需要自己实现解析器的情况下解析它呢?在

已编辑

示例中的some_message字符串是(由于隐私原因,某些数据已被更改):

From from@addr.com  Sat May  4 17:29:21 2013
Return-Path: <from@addr.com>
X-Original-To: script-99999999999999999999999999999999999@mx.xxxxxxxxx.com
Delivered-To: script-99999999999999999999999999999999999@mx.xxxxxxxxx.com
Received: from localhost (localhost.localdomain [127.0.0.1])
    by mx.xxxxxxxxx.com (Postfix) with ESMTP id FFFFFFF
    for <script-99999999999999999999999999999999999@mx.xxxxxxxxx.com>; Sat,  4 May 2013 17:29:21 +0000 (UTC)
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level: 
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=3
    tests=[BAYES_00=-1.9, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001,
    RCVD_IN_DNSWL_LOW=-0.7, T_DKIM_INVALID=0.5]
Received: from mx.xxxxxxxxx.com ([127.0.0.1])
    by localhost (yyy.xxxxxxxxx.com [127.0.0.1]) (amavisd-new, port 10024)
    with ESMTP id EEEEEEEE
    for <script-99999999999999999999999999999999999@mx.xxxxxxxxx.com>;
    Sat,  4 May 2013 17:29:10 +0000 (UTC)
Received: from mail.zzzzzz.com (mail.zzzzzz.com [99.99.99.99])
    by mx.xxxxxxxxx.com (Postfix) with ESMTP id AAAAAAAA
    for <RECIPIENT@ADDR>; Sat,  4 May 2013 17:29:10 +0000 (UTC)
Received: by mail.zzzzzz.com with SMTP id wz19so1388292pbc.3
        for <RECIPIENT@ADDR>; Sat, 04 May 2013 10:29:10 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=zzzzzz.com; s=20120113;
        h=x-received:mime-version:from:date:message-id:subject:to
         :content-type;
        bh=2eA0+yYWPhD/5+hE3gbsF0Q7Y4kT0ZEPjnLAHCkmsqc=;
        b=ioHV7VqfAbClFrgdsafzlSOh/eoa3G0FEhMNTFlHcOMU+tq2a/9GMASbnsXYgH8dVr
         ZeHGV2Cpa0IPIt0sfr7mnJqsmzUSND1tYpWTnhcXn0b9II5FTScVRHTSigcDY6EvWZs2
         Cye/HCZtqnfjzVC/Vc5SrmDzap2yVNxUsMBzUrjRaoqrCH4/4FavilOJUaNYhI1XQela
         b1YLeh7GpmU1/CpnkAw4Dy6Hx4l7BDHYfvwA6pSuOwQb45KVdMzMOFCIKpIKRpwr5SVF
         TFrB+hZqULgEtyqluirFEw1HqPG7nn3Nq00ViX1P5o48tUlqx0M7hWbHOd7xxKfhQS/F
         3UxQ==
X-Received: by 99.99.99.999 with SMTP id x3mr19111157pbl.92.1367688550046;
 Sat, 04 May 2013 10:29:10 -0700 (PDT)
MIME-Version: 1.0
Received: by 99.99.99.99 with HTTP; Sat, 4 May 2013 10:28:50 -0700 (PDT)
From: "from@addr.com" <from@addr.com>
Date: Sat, 4 May 2013 19:28:50 +0200
Message-ID: <CBLwV1i-491fOX8KVhv3tr69mhqVCkZ=y44V0MwVJQpMPtfxN-Q@mail.zzzzzz.com>
Subject: prova2
To: undisclosed-recipients:;
Content-Type: multipart/alternative; boundary=bcaec52e5c2d30634004dbe7cee5

--bcaec52e5c2d30634004dbe7cee5
Content-Type: text/plain; charset=ISO-8859-1

undisclosed
Carles

--bcaec52e5c2d30634004dbe7cee5
Content-Type: text/html; charset=ISO-8859-1

undisclosed<br clear="all"><div>Carles</div>

--bcaec52e5c2d30634004dbe7cee5--

Tags: tofromcomidmessagebywithscript