7
get_payload로 이상하게 작동 함 : 디코딩중인 메시지에 등호가 표시 될 때 쓰레기처럼 보입니다. 여기에 오류가 표시 코드입니다 :파이썬 : 등호를 치면 이메일 get_payload 디코드가 실패합니까?
import email
data = file('testmessage.txt').read()
msg = email.message_from_string(data)
payload = msg.get_payload(decode=True)
print payload
는 그리고 여기 샘플 메시지입니다 : test message은.
메시지는 첫 번째 "="까지만 인쇄됩니다. 나머지는 생략됩니다. 아무도 무슨 일이 일어나고 있는지 아니?
"decode = False"인 동일한 스크립트는 전체 메시지를 반환하므로 디코드가 등호로 불만 인 것처럼 보입니다.
이것은 Python 2.5에 속합니다.
Thanks Richie, that works. 그러나 텍스트가 아닌 첨부 파일도 처리 할 것이므로 다시 대체를 무차별 적으로 수행하고 싶지 않을 것입니다. 나는 text/plain을 감지 할 필요가있을 것이고, 단지 치환을 할 필요가있을 것이다. 나는 message_from_string 호출을 이미 지나치고있는 메시지 부분에 대한 mime 유형을 볼 때부터 약간 미묘하다. get_payload 호출 외에 별도로 디코딩을 호출 할 수 있습니까? – Parand
진정한 바이너리 첨부 파일을 다루는 것이 확실합니까? 첨부 파일은 일반적으로 base64 또는 유사한 것을 사용하여 전자 메일 내에서 인코딩되므로 이진 파일을 나타내지 만 전자 메일 내의 텍스트로 인코딩됩니다. – RichieHindle
당신은 다시 옳습니다. 괜찮은 숫자의 예제로 테스트 해 보았는데, 여러분이 제시 한 대체 코드로 모두 잘 작동합니다. 다시 한번 감사드립니다. – Parand