背景
-
开发一个功能读取邮件信息,其中 包含from字段的值。
-
原代码写法
from_str = header['from'].split(' ')[-1].replace('<', '').replace('>', '')
预期结果:111@xxxx
可知:如果header[‘from’]是=?utf-8?B?5byg5LiJ"<111@xxxx>时,from_str为=?utf-8?B?5byg5LiJ"<111@xxxx>,不是想要的结果。
邮件头
实例1
实例2
可以看出:邮件头信息里的From字段并不一定包含空格。
解决
from_str = header['from'].split('<')[-1].replace('<', '').replace('>', '')