之前看到群友这样一个问题:
大概就是调用网络接口得到的数据是如下形式:
其实这是Quoted-Printable Content-Transfer-Encoding编码出来的文本,这种编码的目的是为了防止文字传输时编码格式被修改,参看:https://www.freesoft.org/CIE/RFC/1521/6.htm
对于这种编码形式,python内置库提供了quopri能够解码上述文本:
关于quopri模块可参考:https://docs.python.org/zh-cn/3/library/quopri.html
也就四个方法:
下面再测试一下编码:
其中参数表示是否对空格和制表符编码,默认不编码。
我们测试一下对空格和制表符编码:
可以看到空格和制表符分别被转换成为和。
而参数则控制了空格是否被编码为下划线:
注意:当参数设置为True时,header参数则无效。
decode和encode与上述方法的区别在于是对流对象进行操作。