91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python關于Quoted-printable編碼詳解和quopri庫怎么用

發布時間:2021-09-24 17:21:44 來源:億速云 閱讀:272 作者:柒染 欄目:開發技術

python關于Quoted-printable編碼詳解和quopri庫怎么用,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

之前看到群友這樣一個問題:

python關于Quoted-printable編碼詳解和quopri庫怎么用

大概就是調用網絡接口得到的數據是如下形式:

text = """=E5=9B=A0=E4=B8=BA=E4=B8=81=E4=BF=8A=E6=99=96=E5=8F=AA=E8=B7=9F=E7=9D=80=
=E9=BA=A6=E8=BF=AA=E5=B0=B1=E4=B8=8D=E5=8F=AF=E8=83=BD=E9=82=A3=E5=88=B0=
=E6=80=BB=E5=86=A0=E5=86=9B=E6=88=92=E6=8C=87=EF=BC=8C=E8=80=83=E8=99=91=
=E5=88=B0=E6=8A=A4=E7=90=83=E9=97=AE=E9=A2=98=EF=BC=8C=E5=A6=82=E6=9E=9C=
=E7=94=A8=E9=BA=A6=E8=BF=AA=E6=8D=A2=E4=BA=A8=E5=88=A9=E7=9A=84=E8=AF=9D=
=E8=AF=B4=E4=B8=8D=E5=AE=9A=E5=B0=B1=E8=A1=8C=EF=BC=8C=E5=BD=93=E7=84=B6=
=E8=AF=B8=E8=91=9B=E5=AD=94=E6=98=8E=E8=BF=99=E4=B8=AA=E8=80=81=E7=8B=90=
=E7=8B=B8=E8=82=AF=E5=AE=9A=E6=98=AF=E7=95=A5=E6=87=82=E8=BF=99=E4=BB=B6=
=E4=BA=8B=E7=9A=84=EF=BC=8C=E4=BB=96=E7=AC=AC=E4=B8=80=E4=B8=AA=E4=B8=8D=
=E7=AD=94=E5=BA=94=EF=BC=8C=E5=B0=B1=E7=AE=97=E4=BB=96=E7=AD=94=E5=BA=94=
=E4=BA=86=EF=BC=8C=E7=BC=9D=E5=B0=8F=E8=82=9B=E8=83=BD=E7=AD=94=E5=BA=94=
=E5=90=97=EF=BC=9F=E6=89=80=E4=BB=A5=E8=BF=99=E6=95=B4=E4=BB=B6=E4=BA=8B=
=E6=83=85=E7=9A=84=E4=BA=AE=E7=82=B9=E5=B0=B1=E5=9C=A8=E4=BA=8E=E7=A7=A6=
=E5=A5=8B"""

其實這是Quoted-Printable Content-Transfer-Encoding編碼出來的文本,這種編碼的目的是為了防止文字傳輸時編碼格式被修改,參看:https://www.freesoft.org/CIE/RFC/1521/6.htm

對于這種編碼形式,python內置庫提供了quopri能夠解碼上述文本:

import quopri

result = quopri.decodestring(text).decode("u8")
result

'因為丁俊暉只跟著麥迪就不可能那到總冠軍戒指,考慮到護球問題,如果用麥迪換亨利的話說不定就行,當然諸葛孔明這個老狐貍肯定是略懂這件事的,他第一個不答應,就算他答應了,縫小肛能答應嗎?所以這整件事情的亮點就在于秦奮'

關于quopri模塊可參考:https://docs.python.org/zh-cn/3/library/quopri.html

也就四個方法:

python關于Quoted-printable編碼詳解和quopri庫怎么用

下面再測試一下編碼:

text = "測試 Quoted-Printable \t編碼"
quopri.encodestring(text.encode("u8"))
b'=E6=B5=8B=E8=AF=95 Quoted-Printable \t=E7=BC=96=E7=A0=81'

其中quotetabs參數表示是否對空格和制表符編碼,默認不編碼。
我們測試一下對空格和制表符編碼:

quopri.encodestring(text.encode("u8"), quotetabs=True)
b'=E6=B5=8B=E8=AF=95=20Quoted-Printable=20=09=E7=BC=96=E7=A0=81'

可以看到空格和制表符分別被轉換成為=20=09

header參數則控制了空格是否被編碼為下劃線:

quopri.encodestring(text.encode("u8"), header=True)
b'=E6=B5=8B=E8=AF=95_Quoted-Printable_\t=E7=BC=96=E7=A0=81'

??注意:當quotetabs參數設置為True時,header參數則無效。

decode和encode與上述方法的區別在于是對流對象進行操作。

關于python關于Quoted-printable編碼詳解和quopri庫怎么用問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桃江县| 托克托县| 饶平县| 贺州市| 泰安市| 南江县| 安阳市| 浏阳市| 元氏县| 富宁县| 西峡县| 东乌珠穆沁旗| 商水县| 龙江县| 高碑店市| 石河子市| 南汇区| 黎平县| 隆尧县| 金乡县| 海城市| 通州市| 威海市| 湘潭县| 鹤壁市| 沾化县| 新兴县| 察雅县| 泌阳县| 林甸县| 克什克腾旗| 福鼎市| 东宁县| 张掖市| 广宁县| 永春县| 灵寿县| 商丘市| 武乡县| 阳东县| 宁河县|