Python如何使用正则表达式去除HTML标签提取文字功能
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,小编给大家分享一下Python如何使用正则表达式去除HTML标签提取文字功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!正则表达式是一个特殊的字符序列,可以帮助您使用模式中保留的专
千家信息网最后更新 2025年01月31日Python如何使用正则表达式去除HTML标签提取文字功能
小编给大家分享一下Python如何使用正则表达式去除HTML标签提取文字功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
正则表达式是一个特殊的字符序列,可以帮助您使用模式中保留的专门语法来匹配或查找其他字符串或字符串集。 正则表达式在UNIX世界中被广泛使用。
Python使用正则表达式去除HTML标签提取文字,具体代码如下:
# -*- coding: utf-8-*-import re##过滤HTML中的标签#将HTML中标签等信息去掉#@param htmlstr HTML字符串.def filter_tags(htmlstr): #先过滤CDATA re_cdata=re.compile('//]*//]]>',re.I) #匹配CDATA re_script=re.compile(']*>[^<]*',re.I)#Script re_style=re.compile(']*>[^<]*',re.I)#style re_br=re.compile('')#处理换行 re_h=re.compile('?w+[^>]*>')#HTML标签 re_comment=re.compile('')#HTML注释 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转换为换行 s=re_h.sub('',s) #去掉HTML 标签 s=re_comment.sub('',s)#去掉HTML注释 #去掉多余的空行 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 w+);') sz=re_charEntity.search(htmlstr) while sz: entity=sz.group()#entity全称,如> key=sz.group('name')#去除&;后entity,如>为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 htmlstrdef repalce(s,re_exp,repl_string): return re_exp.sub(repl_string,s)if __name__=='__main__': str='' # 需要提取的html字符串 str=filter_tags(str) print(str)
看完了这篇文章,相信你对"Python如何使用正则表达式去除HTML标签提取文字功能"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
字符
标签
正则
表达式
字符串
实体
文字
功能
特殊
更多
注释
篇文章
处理
世界
代码
信息
全称
完了
常用
序列
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
喵喵宝可梦服务器下载安装
查询数据库所有表注释
sql2008数据库检测
软件开发应该最开始学哪些
mc多人生存服务器
青少年网络安全微课视频下载
小区三维模型设计软件开发
网络安全活动重要性
天津服务器报废哪家服务好
电视网络安全制度
亿网通达网络技术有限公司
北京小型软件开发系统
北京世纪阳光网络技术有限公司
互联网科技公司取名大全集
数据库的数据对象有哪些
路透数据库
软件开发打卡
网络安全心理剧
无锡品牌软件开发活动简介
网络安全法 行动方案
软件开发时间表模版
免费关系型数据库
python数据库引擎
安卓收费软件开发
网络安全服务发言
软件开发步骤什么
民和租房软件开发
饥荒联机版打开独立服务器
腾讯云服务器连接时间
sql数据库sa密码