繁体   English   中英

PYTHON(sys.stdin.read(1024))截获的传入电子邮件缺少标题和正文

[英]Incoming E-mail intercepted by PYTHON's ( sys.stdin.read(1024) ) is missing title and body content

我使用/etc/aliases重定向传入的电子邮件
用户名"ooo"到python脚本

(由SENDMAIL处理)

ooo:    "|/usr/bin/python /2/a.wsgi"

这就是a.wsgi样子。

import os
import sys

a = sys.stdin.read(1024)
f = open('/2/email.txt','w')
f.write(a)

我从yahoo电子邮件帐户向自己发送了一封测试电子邮件,但是缺少整个标题和正文。

我故意创建了一个由很多o组成的长标题,以及一个由很多o组成的多行正文,以便我能看到它。

当我查看python截获的电子邮件时..这就是email.txt文件的样子。

[root@a 2]# cat email.txt
From a*****@ymail.com Thu Jul 25 09:41:49 2013
Received: from nm23-vm1.bullet.mail.bf1.yahoo.com (nm23-vm1.bullet.mail.bf1.yahoo.com [98.139.213.141])
    by domain.tld (8.14.4/8.14.4) with ESMTP id r6P9fm88005190
    for <ooo@*****.tld>; Thu, 25 Jul 2013 09:41:48 GMT
Received: from [98.139.215.142] by nm23.bullet.mail.bf1.yahoo.com with NNFMP; 25 Jul 2013 17:26:26 -0000
Received: from [98.139.212.228] by tm13.bullet.mail.bf1.yahoo.com with NNFMP; 25 Jul 2013 17:26:26 -0000
Received: from [127.0.0.1] by omp1037.mail.bf1.yahoo.com with NNFMP; 25 Jul 2013 17:26:26 -0000
X-Yahoo-Newman-Property: ymail-3
X-Yahoo-Newman-Id: 45121.53358.bm@omp1037.mail.bf1.yahoo.com
Received: (qmail 29958 invoked by uid 60001); 25 Jul 2013 17:26:26 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ymail.com; s=s1024; t=1374773185; bh=Nc9zHE1K2q237s4A2qN53+4bWmq6BswfttyIcwmUsF8=; h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:Message-ID:Date:From:Reply-To:Subject:To:MIME-Version:Content-Type; b=tN89b5lX46otPfK9builCXVNLty3jVx[root@a 2]# 

如您所见,主题是空的,身体也不可见。

否则我会通过电子邮件发送给自己

主题:oooooooooooooooooooooooooooooooooooooooooooo
身体:也有很多o,但是多行,所以很容易看到。

a = sys.stdin.read(1024)

读取不超过1024个字节。 这大约是您发布的email.txt的长度。 差异可能是由于修订。

因此,如果您想要整个消息,请使用

a = sys.stdin.read()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM