19.9. 夸普里 — 编码和解码 MIME 引用的可打印数据
源代码: :source:`Lib/quopri.py`
该模块执行引用可打印的传输编码和解码,如 RFC 1521:“MIME(多用途互联网邮件扩展)第一部分:指定和描述互联网消息格式的机制”身体”。 引用可打印编码是为不可打印字符相对较少的数据设计的; 如果此类字符很多,则通过 base64 模块提供的 base64 编码方案会更加紧凑,例如发送图形文件时。
- quopri.decode(input, output, header=False)
- 解码 input 文件的内容,并将得到的解码二进制数据写入 output 文件。 input 和 output 必须是 二进制文件对象 。 如果可选参数 header 存在且为真,则下划线将被解码为空格。 这用于解码“Q”编码的标头,如 RFC 1522:“MIME(多用途互联网邮件扩展)第二部分:非 ASCII 文本的消息标头扩展”中所述。
- quopri.encode(input, output, quotetabs, header=False)
- 对 input 文件的内容进行编码,并将结果引用的可打印数据写入 output 文件。 input 和 output 必须是 二进制文件对象 。 quotetabs,一个非可选标志,用于控制是否对嵌入的空格和制表符进行编码; 当为 true 时,它对这种嵌入的空格进行编码,当为 false 时,它使它们未编码。 请注意,根据 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 数据