HTML标签过滤(python)

时间:2024-04-09 10:10:47

HTML标签过滤(python)

正则表达式基本知识:首先了解一点正则表达式

Html标签过滤是一种对爬虫数据进行初步处理的过程,目的是先把大范围无用的数据进行清洗。

在使用python进行爬虫的时候,一般情况下得到的是html的页面,上面有很多无用的标签信息,以及javascript的代码。

所以我在进行标签过滤的时候采用了正则表达式进行匹配并且替换掉无用的内容。

具体使用效果如下:

HTML标签过滤(python)

 

HTML标签过滤(python)

这种东西,基本我们需要的内容在大量无用的代码里面的中文部分。


首先,我进行清理的部分是样式标签,主要原因是样式标签里面的内容我们基本是不需要的。

HTML标签过滤(python)

匹配正则表达式:

STYLE = r'\<style.*?\>.*?\</style\>'

其次,是对<script>标签的清理,它类似于style标签,几乎标签里面的内容都是我们不需要的。HTML标签过滤(python)

然后注意到于<script>标签想对应的<noscript>标签

匹配正则表达式:

JAVASCRIPT = r'\<script.*?\>.*?\</script.*?\>'

NOJAVASCRPT = r'\<noscript.*?\>.*?\</noscript.*?\>'

清除注释内容,一般注释是为了帮助程序员更好地理解其中代码,与正文关系不大,所以对它进行清除。

HTML标签过滤(python)

匹配正则表达式:

SPECIAL = r'\<\!-- .*? --\>'

清除CSS一般性标签

HTML标签过滤(python)

匹配正则表达式:

CSSOpen = r'\<.*?\>'

CSSEnd = r'\</.*?\>'

 

最后就是在中文内容中,最常出现的空白符以及空格占位符

匹配正则表达式:

Space = r'&nbsp'

Spacese = r'\s'