Python對HTML跳脫字元進行反轉義
什麼是跳脫字元
在 HTML 中 <、>、& 等字元有特殊含義(<,> 用於標籤中,& 用於轉義),他們不能在 HTML 程式碼中直接使用,如果要在網頁中顯示這些符號,就需要使用 HTML 的跳脫字元串(Escape Sequence),例如 < 的跳脫字元是 <,瀏覽器渲染 HTML 頁面時,會自動把轉移字串換成真實字元。
跳脫字元(Escape Sequence)由三部分組成:第一部分是一個 & 符號,第二部分是實體(Entity)名字,第三部分是一個分號。 比如,要顯示小於號(<),就可以寫< 。
顯示字元 說明 跳脫字元
< 小於 <
空格
< 小於 <
> 大於 >
& &符號 &
" 雙引號 "
© 版權 ©
® 已註冊商標 ®
Python 跳脫字元串反轉義
用 Python 來處理跳脫字元串有多種方式,而且 py2 和 py3 中處理方式不一樣,在 python2 中,反轉義的模組是 HTMLParser。
1
2
3
4 |
# Python2 import
HTMLParser >>> HTMLParser().unescape(
'param=p1&param=p2'
) 'param=p1¶m=p2' |
Python3 HTMLParser 模組遷移到了 html.parser
1
2
3
4 |
# Python3 >>>
from
html.parser
import
HTMLParser >>> HTMLParser().unescape(
'param=p1&param=p2'
) 'param=p1¶m=p2' |
到 python3.4 以後的版本,在 html 模組新增了 unescape 方法。
1
2
3
4 |
# Python3.4 >>>
import
html >>> html.unescape(
'param=p1&param=p2'
) 'param=p1¶m=p2' |
推薦最後一種寫法,因為 HTMLParser.unescape 方法在 Python3.4 就已經被廢棄掉不推薦使用了,意味著之後的版本會被徹底移除。
另外,xml的sax模組也有支援反轉義的函式
1
2
3 |
>>>
from
xml.sax.saxutils
import
unescape >>> unescape(
'param=p1&param=p2'
) 'param=p1¶m=p2' |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952502/viewspace-2942934/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- HTML跳脫字元HTML字元
- python使用跳脫字元解決歧義Python字元
- python的跳脫字元是什麼Python字元
- java跳脫字元Java字元
- MyBatis 跳脫字元處理MyBatis字元
- mysql 的Escape跳脫字元串MySql字元
- php過濾html標籤、特殊字元、轉義字元PHPHTML字元
- 折行轉義字元字元
- 字元反轉字元
- Python語法的轉義字元Python字元
- HTML 基礎知識(特殊字元的轉義)HTML字元
- JavaScript html標籤轉義為實體字元JavaScriptHTML字元
- 轉義字元字元
- Linux命令列:對內容進行大小寫字元轉換 Linux命令列字元
- 包裝類型別,跳脫字元,BigDecimal,BigInteger,Ca型別字元Decimal
- 將一個字串進行反轉:將字串中指定部分進行反轉。比如“abcdefg”反轉為”abfedcg”字串
- oracle轉義字元Oracle字元
- 自定義註解進行資料脫敏
- (問)get請求會對中文及特殊字元進行轉碼字元
- Flutter中如何進行介面跳轉Flutter
- Oracle 特殊字元轉義Oracle字元
- Markdown常用轉義字元字元
- 中文字元轉為HTML字元實體字元HTML
- 跳脫字元在前端開發中的詳細介紹字元前端
- 資料泵datapump(expdp/impdp)的parfile用法,避免跳脫字元字元
- buffalo 框架中 不對 HTML 內容轉義框架HTML
- 記一次 RestTemplate 請求失敗問題的排查 → RestTemplate 預設會對特殊字元進行轉義REST字元
- Python-網頁轉義字元及正則全文匹配Python網頁字元
- scheme跳轉特殊字元編碼問題Scheme字元
- 【廖雪峰python入門筆記】字串_轉義字元的使用Python筆記字串字元
- 正規表示式 轉義字元字元
- web前端---轉義字元的坑Web前端字元
- Python對字典進行排序Python排序
- 在Linux命令列中進行大小寫字元轉換Linux命令列字元
- python字元對映表和字元替換Python字元
- Flutter 使用Navigator進行區域性跳轉頁面Flutter
- 2020-11-13整數轉換為字串 字元反轉字串字元
- 好程式設計師Java分享Java語言中的常見的跳脫字元程式設計師Java字元