Python 实现类似PHP的strip_tags功能,并能够定义他们自己的一套保留标记
2023-09-14 09:10:18 时间
最近的研究 Python ,发现还是很习惯使用,多PHP这是非常easy该功能Python 这不得不找了半天,而且非常灵活不得不实现自己的。
我们今天聚集,需要过滤的内容标签,搞一个PM。外形似终于想通了,下一个测试,以达到预期的效果,话不多说贴上代码吧
from html.parser import HTMLParser def strip_tags(html, save=None): result = [] start = [] data = [] def starttag(tag, attrs): if tag not in save: return start.append(tag) if attrs: j = 0 for attr in attrs: attrs[j] = attr[0] + '="' + attr[1] + '"' j += 1 attrs = ' ' + (' '.join(attrs)) else: attrs = '' result.append('<' + tag + attrs + '>') def endtag(tag): if start and tag == start[len(start) - 1]: result.append('</' + tag + '>') parser = HTMLParser() parser.handle_data = result.append if save: parser.handle_starttag = starttag parser.handle_endtag = endtag parser.feed(html) parser.close() for i in range(0, len(result)): tmp = result[i].rstrip('\n') tmp = tmp.lstrip('\n') if tmp: data.append(tmp) return ''.join(data)
用法:
result = strip_tags("""发生的杀毒<a target="_blank" title="足球比分直播" href="http://live.500.com/" >足球比分直播</a><a target="_blank" title="竞彩足球" href="http://zx.500.com/jczq/" >竞彩足球</a><a target="_blank" title="篮球竞彩" href="http://zx.500.com/jclq/" >篮球竞彩</a></div> <img src="dd" alt=">"> <p> 打蛇打七寸,北单7串1。因为<a target="_blank" title="北京单场" href="http://zx.500.com/zqdc/">北京单场</a>SP值计算规则与竞彩不同。4串1及下面投注购买竞彩更划算。而7串1以上的投注非常可能交税,反而不划算。依据计算,北京单场4串1到7串1之间的投注最划算。</p> """, ['p', 'img']) print(result)
输出结果:
发生的杀毒足球比分直播竞彩足球篮球竞彩 <img src="dd" alt=">"> <p> 打蛇打七寸,北单7串1。因为北京单场SP值计算规则与竞彩不同,4串1及下面投注购买竞彩更划算,而7串1以上的投注非常可能交税,反而不划算。依据计算。北京单场4串1到7串1之间的投注最划算。</p>
仅保留 <a> 和 <p> 标签
版权声明:本文博客原创文章。博客,未经同意,不得转载。
http://blog.csdn.net/zhouzme
相关文章
- Keras/Tensorflow+python+yolo3训练自己的数据集
- PHP连接linux并执行命令,php实现ssh远程连接服务器并操作服务器,PHP跨服务器执行shell脚本
- MySQL与Python搭配,实现数据库操作。(mysql-python)
- 强大的PHP环境,支持Redis全面提升效能(php支持redis)
- Python操作Redis实现数据持久化(python操作redis)
- 数据库远程连接MySQL数据库:利用PHP实现简易方法(php远程mysql)
- 快速访问MSSQL数据库:PHP实现(php访问mssql)
- 实现【使用Redis实现PHP抢红包迅速拿奖励】(php抢红包redis)
- 使用Linux运行PHP脚本:完美实现(linux执行php脚本)
- MySQL验证:PHP实现细节(php验证mysql)
- PHP开启Redis之路:快速上手(php开启redis)
- MySQL封装,PHP解决方案(php封装mysql)
- PHP如何获取MySQL版本?(php获取mysql版本)
- PHP与MySQL结合使用实现关联查询的方法(php关联mysql查询)
- 实现PHP与MySQL的无缝连接,增强web开发效率(让php支持mysql)
- 用PHP操作Oracle:实现强大的数据库能力(php支持oracle)
- PHP在Linux中的路径指引(php路径linux)
- PHP连接Oracle:轻松实现数据库交互(php链接oracle)
- PHP与MSSQL的结合:实现无缝连接(php调用mssql)
- PHP实现从MSSQL中数据显示(php 显示 mssql)
- Php与Mssql数据库的结合:强大联合力量(php mssql数据库)
- 使用PHP和MSSQL实现网站搭建(php mssql 搭建)
- PHP连接MSSQL数据库快速开启(php mssql 打开)
- MySQL与PHP实现长久连接的完美结合(mysql php长连接)
- PHP实现稳定支持Redis的精彩瞬间(让php支持redis)
- PHP实现高效的Redis连接(redis连接 php)
- 以Redis为中心 轻松实现PHP消息订阅(redis消息订阅php)
- php另类上传图片的方法(PHP用Socket上传图片)
- python处理PHP数组文本文件实例