国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Quoted-printable編碼的介紹和quopri庫的使用

chaos_G / 3830人閱讀

摘要:我們測試一下對空格和制表符編碼可以看到空格和制表符分別被轉換成為和。和與上述方法的區別在于是對流對象進行操作。

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

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

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 quopriresult = quopri.decodestring(text).decode("u8")result
"因為丁俊暉只跟著麥迪就不可能那到總冠軍戒指,考慮到護球問題,如果用麥迪換亨利的話說不定就行,當然諸葛孔明這個老狐貍肯定是略懂這件事的,他第一個不答應,就算他答應了,縫小肛能答應嗎?所以這整件事情的亮點就在于秦奮"

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

也就四個方法:

下面再測試一下編碼:

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參數則無效。

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

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/120001.html

相關文章

  • Python解析郵件

    摘要:發送郵件好說,接收和下載郵件也好說。所以我們想要解析一封郵件把它拆成人能讀懂的標題收發件人內容附件等,就必須得理解這套協議。了解協議,其實主要就是了解郵件的嵌套結構。另一種壓縮方式,需要用庫函數來解碼。 郵件的解析是個大課題,遠超一般人的預期。它遠比發送郵件和接收郵件要復雜的多的多。這就是為什么網上中文外文搜郵件的問題,絕大多數都是講發送的而講接收的很少。 發送郵件好說,接收和下載郵件...

    tracymac7 評論0 收藏0
  • Python學習之路23-文本字節序列

    摘要:字符編碼表,碼位碼元將編碼字符集中的碼位轉換成有限比特長度的整型值的序列。字符編碼方案,碼元序列化也稱為常說的序列化。每個字節里的二進制數就是字節序列。另一個情況則是壓縮字節序列的值,如或進程長度編碼等無損壓縮技術。 《流暢的Python》筆記。本篇主要講述不同編碼之間的轉換問題,比較繁雜,如果平時處理文本不多,或者語言比較單一,沒有多語言文本處理的需求,則可以略過此篇。 1. 前言 ...

    anRui 評論0 收藏0
  • PHP偽協議總結

    摘要:參考了這篇文章偽協議實現命令執行的七種姿勢,并根據自己理解進行了總結,也算是加深一下印象,方便以后使用。說明文件系統是使用的默認封裝協議,展現了本地文件系統。允許直接訪問指定的文件描述符。 參考了這篇文章:php偽協議實現命令執行的七種姿勢,并根據自己理解進行了總結,也算是加深一下印象,方便以后使用。 file:// 協議 條件: allow_url_fopen:off/on...

    huaixiaoz 評論0 收藏0
  • Python——基本數據類型(模塊2: time庫使用)(實例3:文本進度條)

    摘要:前言本篇主要介紹基本數據類型,以文本進度條為例,介紹庫的使用。 前言 本篇主要介紹基本數據類型,以文本進度條為例,介紹time庫的使用。 并在最后對蟒蛇繪制的代碼進...

    Jenny_Tong 評論0 收藏0
  • JavaScript如何實現UTF-16編碼轉換為UTF-8編碼——utfx.js源碼解析

    摘要:編碼轉換為編碼下面讓我們來看下如何將編碼的數據轉換為編碼的數據。該方法是將碼進行編碼轉換,從而得到編碼的數據。 概述 當你在前端需要通過二進制數據與服務端進行通信時,你可能會遇到二進制數據的編碼問題。大部分服務端的字符串編碼類型都為UTF-8,而JavaScript中字符串編碼類型是UTF-16,因此,你需要一個能夠將字符串在兩種編碼方式間進行轉換的方法。 本文通過對utfx.js這個...

    maybe_009 評論0 收藏0

發表評論

0條評論

chaos_G

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<