背景
由于同学每周要通过邮箱收数学建模作业,100多人给她发附件,她要一个个地点着下载。
太麻烦了,所以想用程序实现下载附件的功能。
在网上查资料后,最终实现了稍为简单的下载附件功能,代码有些细节还不是很了解。
2019.4.16更新:
过几天我也要用邮箱收文件,有了这份代码刚好能用!这再次印证知识不会没用处的,不学才会觉得知识没用呢。
代码
import poplib
import email
import time
from email.parser import Parser
from email.header import decode_header
def decode_str(s):#字符编码转换
value, charset = decode_header(s)[0]
if charset:
value = value.decode(charset)
return value
def get_att(msg):
attachment_files = []
for part in msg.walk():
file_name = part.get_filename() # 获取附件名称类型
contType = part.get_content_type()
if file_name:
h = email.header.Header(file_name)
dh = email.header.decode_header(h) # 对附件名称进行解码
filename &