电子邮件地址中服务器怎么看,你如何检查电子邮件服务器(gmail)中的某个地址,并基于该地址运行一些东西?...

POP3.retr(which)

Retrieve whole message number which, and set its seen flag. Result is in form (response, ['line', ...], octets).

因此,假设您已经将retr()的结果放入一个名为response的变量中,消息的行将作为一个列表存储在response[1]中。通过RFC 2822我们知道消息头与消息体之间用一个空行隔开。消息的发送者将在From:标题行中。因此,我们可以迭代消息的行,当我们得到一个空行时停止,当我们看到以From:开头的行时,为发送方设置一个变量。在

^{pr2}$

如果您计划对头进行大量处理,那么按头名称将它们放入字典可能会很有用。因为每个标题可以出现多次,所以字典中的每个值都应该是一个列表。在headers = {}

for line in response[1]:

if line == "":

break

line = line.partition(" ")

key = line[0].strip().rstrip(":")

value = line[2].stirp()

headers.setdefault(key, []).append(value)

在此之后,您可以使用headers["From"][0]获取消息的发送者。在

我想展示一下实现这一点的基本方法,因为它不是很复杂,但是Python可以为您完成大部分工作。同样,假设您的retr()结果是response:import email

# convert our message back to a string and parse it

headers = email.parsefromstring("\n".join(response[0]), headersonly=True)

print headers["From"] # prints the sender

您可以在email module的文档中找到有关message对象的更多信息。在

电子邮件消息的From:行除了电子邮件地址之外,可能还有其他文本,例如发件人的姓名。您可以使用正则表达式提取电子邮件地址:sender = re.find(r".*[

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值