zoukankan      html  css  js  c++  java
  • 用python处理html代码的转义与还原

    用python处理html代码的转义与还原  

     

    转义 escape:

    import cgi
    s = cgi.escape("""& < >""") # s = '&amp; &lt; &gt;'
     

    反转义 unescape:

    #使用标准库
    from htmllib import HTMLParser 
    h = HTMLparser.HTMLParser() 
    s = h.unescape('& < >')   # s = u'& < >' 
     
    #使用BeautifulSoup 
    from bs4 import BeautifulSoup 
    soup = BeautifulSoup(html,
          convertEntities=BeautifulSoup.HTML_ENTITIES)
     
    引用于:
    http://fredericiana.com/2010/10/08/decoding-html-entities-to-text-in-python/
    https://wiki.python.org/moin/EscapingHtml
    ----------------------------------------------------------------------------------------------------------
     

    Python处理HTML转义字符

    抓网页数据经常遇到例如&gt;或者&nbsp;这种HTML转义符,抓到字符串里很是烦人。

    比方说一个从网页中抓到的字符串

    html = '&lt;abc&gt;'

    用Python可以这样处理:

    import HTMLParser
    html_parser = HTMLParser.HTMLParser()
    txt = html_parser.unescape(html) #这样就得到了txt = '<abc>'

    如果还想转回去,可以这样:

    import cgi
    html = cgi.escape(txt) # 这样又回到了 html = '&lt;abc&gt'

     来回转的功能还分了两个模块实现,挺奇怪。没找到更优美的方法,欢迎补充哈~

    --------------------------------------------------

    html的escape和unescape

  • 相关阅读:
    [Codeforces 1290C]Prefix Enlightenment
    [JLOI 2015]战争调度
    [APIO 2010]特别行动队
    [CEOI 2004]锯木厂选址
    [USACO 08MAR]土地购买
    [HNOI 2017]大佬
    [NOI 2011]NOI 嘉年华
    [SHOI 2013]超级跳马
    [NOI 2005]瑰丽华尔兹
    [SCOI 2010]股票交易
  • 原文地址:https://www.cnblogs.com/kungfupanda/p/4313903.html
Copyright © 2011-2022 走看看