`quopri` — MIME quoted-printable 데이터 인코딩·디코딩
quopri — MIME quoted-printable 데이터 인코딩·디코딩
quopri 모듈은 RFC 1521("MIME Part One")에서 정의한 quoted-printable 전송 인코딩과 디코딩을 수행해요. quoted-printable 인코딩은 비출력 문자가 상대적으로 적은 데이터에 맞게 설계됐는데, 그래픽 파일처럼 그런 문자가 많은 데이터를 보낼 때는 base64 모듈의 인코딩 방식이 더 압축적이에요.
출처: Python 표준 라이브러리
본문
quopri.decode(*input*, *output*, *header=False*)
input 파일의 내용을 디코딩해서 결과로 나온 이진 데이터를 output 파일에 써요. input과 output은 반드시 이진 파일 객체여야 해요. 선택 인자 header가 참이면 밑줄(_)을 공백으로 디코딩하는데, 이는 RFC 1522의 "Q" 인코딩 헤더를 디코딩할 때 쓰여요.
quopri.encode(*input*, *output*, *quotetabs*, *header=False*)
input 파일의 내용을 인코딩해서 결과로 나온 quoted-printable 데이터를 output 파일에 써요. input과 output은 반드시 이진 파일 객체예요. quotetabs는 필수 플래그로, 내장된 공백과 탭을 인코딩할지 제어해요. 참이면 그런 내장 공백을 인코딩하고, 거짓이면 인코딩하지 않고 그대로 남겨요. 줄 끝에 나타나는 공백과 탭은 RFC 1521에 따라 항상 인코딩된다는 점을 기억하세요. header는 RFC 1522에 따라 공백을 밑줄로 인코딩할지 제어하는 플래그예요.
quopri.decodestring(*s*, *header=False*)
decode()와 비슷하지만, 원본 bytes를 받아서 그에 대응하는 디코딩된 bytes를 반환해요.
quopri.encodestring(*s*, *quotetabs=False*, *header=False*)
encode()와 비슷하지만, 원본 bytes를 받아서 그에 대응하는 인코딩된 bytes를 반환해요. 기본적으로 encode() 함수의 quotetabs 인자에 False를 넘겨요.
더 알아보기
base64모듈: MIME base64 데이터의 인코딩·디코딩.