使用lxml.html.clean.Cleaner清洗html

简介: 使用lxml.html.clean.Cleaner清洗html

文档:

https://lxml.de/lxmlhtml.html#cleaning-up-html

代码示例

# -*- coding: utf-8 -*-
from lxml.html.clean import Cleaner
html = """
<p cms-style="font-L">  
    <strong>铁打的腾讯</strong>
    <a href="//n.sinaimg.cn/tech/crawl/115/w550h365/20200326/963a-irkazzv3237667.jpg" class="keyword f_st" target="_blank">
        <img src="//n.sinaimg.cn/tech/crawl/115/w550h365/20200326/963a-irkazzv3237667.jpg" alt="">
    </a>
</p>
"""
# 保存新闻的时候,很多属性不需要保存,不然会占用硬盘资源,所以只保留图片标签的src属性就行
safe_attrs = frozenset(['src'])
# a标签也不要,只保留里边的内容
remove_tags = frozenset([
    'a'
])
cleaner = Cleaner(safe_attrs=safe_attrs, remove_tags=remove_tags)
cleaned_html = cleaner.clean_html(html)
print(cleaned_html)
'''
<p>  
    <strong>铁打的腾讯</strong>
        <img src="//n.sinaimg.cn/tech/crawl/115/w550h365/20200326/963a-irkazzv3237667.jpg">
</p>
'''

清洗之后内容简洁多了

相关文章
|
网络协议 Shell Android开发
解决adb网络连接中出现的“由于目标计算机积极拒绝,无法连接”错误
解决adb网络连接中出现的“由于目标计算机积极拒绝,无法连接”错误
解决adb网络连接中出现的“由于目标计算机积极拒绝,无法连接”错误
|
10月前
|
人工智能 API 开发工具
【重磅发布】 免费领取阿里云百炼AI大模型100万Tokens教程出炉,API接口实战操作,DeepSeek-R1满血版即刻体验!
阿里云百炼是一站式大模型开发及应用构建平台,支持开发者和业务人员轻松设计、构建大模型应用。通过简单操作,用户可在5分钟内开发出大模型应用或在几小时内训练专属模型,专注于创新。
3006 89
【重磅发布】 免费领取阿里云百炼AI大模型100万Tokens教程出炉,API接口实战操作,DeepSeek-R1满血版即刻体验!
|
7月前
|
缓存 Android开发 iOS开发
Kotlin跨平台Compose Multiplatform实战指南
Kotlin Multiplatform (KMP) 结合 Compose Multiplatform,助力开发者用一套代码构建跨平台应用(Android、iOS、桌面和 Web)。本文提供实战指南,涵盖环境搭建、项目结构、共享 UI 编写、平台适配、状态管理及资源处理等内容。通过 expect/actual 处理差异,借助官方文档与示例项目学习,减少重复代码,优化多平台开发体验。
1536 18
|
11月前
|
Web App开发 JSON 测试技术
API测试工具集合:让接口测试更简单高效
在当今软件开发领域,接口测试工具如Postman、Apifox、Swagger等成为确保API正确性、性能和可靠性的关键。Postman全球闻名但高级功能需付费,Apifox则集成了API文档、调试、Mock与自动化测试,简化工作流并提高团队协作效率,特别适合国内用户。Swagger自动生成文档,YApi开源但功能逐渐落后,Insomnia界面简洁却缺乏团队协作支持,Paw仅限Mac系统。综合来看,Apifox是国内用户的理想选择,提供中文界面和免费高效的功能。
|
IDE 开发工具 iOS开发
Pandas如何在PyCharm中进行安装?
【7月更文挑战第4天】Pandas如何在PyCharm中进行安装?
4269 61
|
Dart 微服务
dart中使用protobuf
dart中使用protobuf
|
SQL 数据库 存储
SQL SERVER数据库删除LOG文件和清空日志的方案
原文:SQL SERVER数据库删除LOG文件和清空日志的方案 数据库在使用过程中会使日志文件不断增加,使得数据库的性能下降,并且占用大量的磁盘空间。SQL Server数据库都有log文件,log文件记录用户对数据库修改的操作。
9615 0
|
数据可视化
在Flutter中设置更好的Logging的指南
今天,我们将研究可以极大减少应用程序调试时间的任务之一。一旦您习惯了在您的应用程序中以某种方式运行的日志,您将很快能够注意到为什么某些东西不起作用。您可以查看应用程序的流程,如果需要,还可以查看更多内容。
630 0
在Flutter中设置更好的Logging的指南
Acme 账户问题
Acme 账户问题
584 0
|
存储 域名解析 缓存
阿里云 Composer 镜像开源啦!3 步快速搭建自己的 Composer 的镜像!
为了服务 PHP 开发者,2019 年 7 月,阿里云提供了 Composer 镜像服务。本文将为大家介绍如何通过 3 步快速搭建自己的 Composer 镜像。
4546 0
阿里云 Composer 镜像开源啦!3 步快速搭建自己的 Composer 的镜像!