BeautifulSoup模块过滤掉html标签,只拿文本内容(处理XSS攻击)


from bs4 import BeautifulSoup
#kindeditor
def kindeditor(request):
s = '''
<li><span style="font-family: 幼圆; font-size: 16px;">默认值: false</span></li>
  '''

bs = BeautifulSoup(s,"html.parser")
print(bs.text)
return render(request,"KindEditor.html")


结果:
  只获取到了 默认值: false



s = '''
<li><span style="font-family: 幼圆; font-size: 16px;">默认值: false</span></li>
<a href="http://111111">test</a>
'''

bs = BeautifulSoup(s,"html.parser")
print(bs.text)

for tag in bs.find_all(): #查找所有的标签 按层级查找的
print(tag.name) #显示标签名
print(tag.get("href")) #获取href标签的内容
if tag.name in ["span"]: #里面是否有span标签
tag.decompose() #删除span 标签
print(bs)

return render(request,"KindEditor.html")
 

相关文章

注:所有源代码均实测运行过。所有源代码均已上传CSDN,请有...
继承APIView和ViewSetMixin;作用也与APIView基本类似,提供...
一、Django介绍Python下有许多款不同的 Web 框架。Django是重...
本文从nginx快速掌握到使用,gunicorn快速掌握到使用,实现小...
uniapp微信小程序订阅消息发送服务通知
Django终端打印SQL语句 1 Setting配置: 2 默认python 使用的...