处理XSS攻击以及文章摘要的处理

文章摘要的处理

在上文中,我们添加文章简介是用暴露的方式直接切取

这样的方式导致文章简介包含标签,如下图:

image

正确的业务逻辑应该是想办法,获取当前的文本内容,然后切取150个文本字符串!!

解决方法:借助bs4模块

        # 文章简介的获取
        desc = soup.text[0:150]

xss攻击

针对支持用户直接编写html代码的网站,我们需要对用户编写的script标签进行处理,否则会出现用户编辑script标签,浏览器识别后会进行相应的处理!!

比如编写: 这样的代码,浏览器会弹出123!

解决思路:
1.注释标签内的内容
2.直接将script删除

处理xss攻击我们需要借助一个bs4模块中的beautifulsoup
下载:pip3 install beautifulsoup4
导入:from bs4 import BeautifulSoup

        # BeautifulSoup模块的使用
        # 1. 生成一个soup对象,第一个参数是文本内容,第二个参数是解析器推荐内置的'html.parser'
        soup = BeautifulSoup(content,'html.parser')
        # 2. find_all()获取文章所有的原生html代码
        tags = soup.find_all()
        # 3.获取所有的标签
        for tag in tags:
            # print(tag.name) # tag.name 获取所有标签名
            # 针对script标签直接删除
            if tag.name == 'script':
                tag.decompose() #删除标签的方法

posted @ 2022-10-10 22:35  等日落  阅读(31)  评论(0编辑  收藏  举报