欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python對html過濾處理的方法

 更新時間:2018年10月21日 15:33:39   作者:striverpan  
今天小編就為大家分享一篇python對html過濾處理的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

如下所示:

##過濾HTML中的標(biāo)簽
#將HTML中標(biāo)簽等信息去掉
#@param htmlstr HTML字符串.
def filter_tags(htmlstr):
 #先過濾CDATA
 re_cdata=re.compile('//<!\[CDATA\[[^>]*//\]\]>',re.I) #匹配CDATA
 re_script=re.compile('<\s*script[^>]*>[^<]*<\s*/\s*script\s*>',re.I)#Script
 re_style=re.compile('<\s*style[^>]*>[^<]*<\s*/\s*style\s*>',re.I)#style
 re_br=re.compile('<br\s*?/?>')#處理換行
 re_h=re.compile('</?\w+[^>]*>')#HTML標(biāo)簽
 re_comment=re.compile('<!--[^>]*-->')#HTML注釋
 re_stopwords=re.compile('\u3000')#去除無用的'\u3000'字符
 s=re_cdata.sub('',htmlstr)#去掉CDATA
 s=re_script.sub('',s) #去掉SCRIPT
 s=re_style.sub('',s)#去掉style
 s=re_br.sub('\n',s)#將br轉(zhuǎn)換為換行
 s=re_h.sub('',s) #去掉HTML 標(biāo)簽
 s=re_comment.sub('',s)#去掉HTML注釋
 s=re_stopwords.sub('',s)
 #去掉多余的空行
 blank_line=re.compile('\n+')
 s=blank_line.sub('\n',s)
 s=replaceCharEntity(s)#替換實體
 return s

##替換常用HTML字符實體.
#使用正常的字符替換HTML中特殊的字符實體.
#你可以添加新的實體字符到CHAR_ENTITIES中,處理更多HTML字符實體.
#@param htmlstr HTML字符串.
def replaceCharEntity(htmlstr):
 CHAR_ENTITIES={'nbsp':' ','160':' ',
    'lt':'<','60':'<',
    'gt':'>','62':'>',
    'amp':'&','38':'&',
    'quot':'"','34':'"',}

 re_charEntity=re.compile(r'&#?(?P<name>\w+);')
 sz=re_charEntity.search(htmlstr)
 while sz:
  entity=sz.group()#entity全稱,如&gt;
  key=sz.group('name')#去除&;后entity,如&gt;為gt
  try:
   htmlstr=re_charEntity.sub(CHAR_ENTITIES[key],htmlstr,1)
   sz=re_charEntity.search(htmlstr)
  except KeyError:
   #以空串代替
   htmlstr=re_charEntity.sub('',htmlstr,1)
   sz=re_charEntity.search(htmlstr)
 return htmlstr

以上這篇python對html過濾處理的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python學(xué)習(xí)之sys模塊使用教程詳解

    Python學(xué)習(xí)之sys模塊使用教程詳解

    sys模塊?與?os包一樣,也是對系統(tǒng)資源進行調(diào)用。功能同樣也是非常豐富。本文將對sys模塊的一些簡單且常用的函數(shù)進行介紹,感興趣的可以學(xué)習(xí)一下
    2022-03-03
  • python中cv2模塊如何安裝使用

    python中cv2模塊如何安裝使用

    這篇文章主要給大家介紹了關(guān)于python中cv2模塊如何安裝的相關(guān)資料,CV2指的是OpenCV2(Open?Source?Computer?Vision?Library),是一個開源的庫平臺計算機視覺庫,有很強大的圖片處理功能,可實現(xiàn)圖像處理和計算機視覺方面的很多通用算法,需要的朋友可以參考下
    2023-10-10
  • Python利用matplotlib實現(xiàn)動態(tài)可視化詳解

    Python利用matplotlib實現(xiàn)動態(tài)可視化詳解

    Python中的數(shù)據(jù)可視化是指原始數(shù)據(jù)的圖形表示,以更好地可視化、理解和推理,Python提供了各種庫,包含用于可視化數(shù)據(jù)的不同特性,下面我們就來看看如何利用matplotlib實現(xiàn)動態(tài)可視化吧
    2023-08-08
  • 解決django migrate報錯ORA-02000: missing ALWAYS keyword

    解決django migrate報錯ORA-02000: missing ALWAYS keyword

    這篇文章主要介紹了解決django migrate報錯ORA-02000: missing ALWAYS keyword,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • Python 正則表達式入門(初級篇)

    Python 正則表達式入門(初級篇)

    本文主要為沒有使用正則表達式經(jīng)驗的新手入門所寫。由淺入深介紹了Python 正則表達式,有需要的朋友可以看下
    2016-12-12
  • python中的bool數(shù)組取反案例

    python中的bool數(shù)組取反案例

    這篇文章主要介紹了python中的bool數(shù)組取反案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 利用python GDAL庫讀寫geotiff格式的遙感影像方法

    利用python GDAL庫讀寫geotiff格式的遙感影像方法

    今天小編就為大家分享一篇利用python GDAL庫讀寫geotiff格式的遙感影像方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python遠程郵件控制電腦升級版

    python遠程郵件控制電腦升級版

    這篇文章主要為大家詳細介紹了python3.4遠程控制電腦開關(guān)機,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • Python中join函數(shù)簡單代碼示例

    Python中join函數(shù)簡單代碼示例

    這篇文章主要介紹了Python中join函數(shù)簡單代碼示例,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • 全面了解python字符串和字典

    全面了解python字符串和字典

    下面小編就為大家?guī)硪黄媪私鈖ython字符串和字典。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07

最新評論