2016-05-31 13 views
2

"받는 사람"및 "보낸 사람"필드의 전자 메일 주소를 Python을 사용하여 변경하고 싶습니다. 지금까지 필자는 필수 필드를 읽는 중 일하고있다. 어느 누구도 제안하십시오, 그들에게 변화를 일으키는 방법.Python : eml 파일의 값 수정 (전자 메일 헤더)

from email.parser import Parser 

fp = open('2.eml', 'r+') 
headers = Parser().parse(fp) 

# Make changes only within a code, Not in to the file. I would like to save given changes for from in to my 2.eml file 
headers.replace_header('from', '[email protected]') 

print ('To: %s' % headers['to']) 
print ('From: %s' % headers['from']) 
print ('Subject: %s' % headers['subject']) 

답변

1

당신은 다시 파일에 변경 메시지를 작성해야합니다 email.parser.Parser.parse에 의해 반환되는 값이 email.message.Message 같이 이름 headers이 완전히 정확하지

with open('2.eml', 'w') as outfile: 
    outfile.write(headers.as_string()) 

참고.

+0

고마워요! 그것은 작동합니다. – jaymin581