当前位置: 首页 > news >正文

8.爬虫数据提取——bs4的解析引擎介绍

爬虫数据提取——bs4的解析引擎介绍

在使用requests库获取到html字符串之后,接下来我们便可以使用bs4库对其进行解析,比如:

from bs4 import BeautifulSoup

#content为待解析的html字符串
#lxml为bs4的解析器[解析器有不同的选择]
soup = BeautifulSoup(content,"lxml")

在这里我们需要自行选择不同的解析器,我们本次来盘点一下bs4的解析器。

解析器使用方法优势劣势
Python标准库soup = BeautifulSoup(html,"html.parser")

    1.Python内置标准库

    2.执行速度适中

Python2.x或者python3.2x前的版本中文文档容错能力差
lxml  HTML解析器soup = BeautifulSoup(html,"lxml")

    1.速度快

    2.文档容错能力强

需要安装C语言库
lxml  XML解析器soup = BeautifulSoup(html,"xml")

    1.速度快

    2.唯一支持XML的解析器

需要安装C语言库
html5libsoup = BeautifulSoup(html,"html5lib")

1.最好的容错性

2.以浏览器的方式解析文档

3.生成HTML5格式的文档

4.不依赖外部扩展库

        1.速度慢

1.一般来说,我们使用lxml解析器,速度快,并且还有一些容错能力。【lxml解析器为首选

2.如果碰到一些网站,使用lxml无法解析的时候,就可以使用html5lib作为解析器进行解析,不过html5lib需要自己安装。

3.html5lib安装方式:(1)在线安装:pip install html5lib 

                                  (2)离线安装:pip install +whl文件


扫描二维码即可参与该课程,解锁更多爬虫知识:

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 赵岩最新演绎—最远的你是我最近的爱
  • 1.爬虫数据储存——Excel环境配置
  • 站长其人
  • 爬虫数据储存—CSV文件
  • 对于图的遍历的四种问题
  • 爬虫数据存储—数据库和MySQL
  • 爬虫数据存储—安装MySQL
  • 如何获得当前数据库的SCN值
  • 连接数据库
  • 选择邮件服务器十二要素(转自www.5dmail.net)
  • 使用pymysql连接数据库
  • 线程和进程
  • 如何删除和重新安装IIS和Exchange
  • 认识生产者和消费者模式
  • 大型企业局域网安全解决方案
  • 【刷算法】求1+2+3+...+n
  • Android 架构优化~MVP 架构改造
  • es6--symbol
  • JavaScript标准库系列——Math对象和Date对象(二)
  • Java方法详解
  • Java精华积累:初学者都应该搞懂的问题
  • JS 面试题总结
  • laravel5.5 视图共享数据
  • PAT A1050
  • Sequelize 中文文档 v4 - Getting started - 入门
  • 测试开发系类之接口自动化测试
  • 彻底搞懂浏览器Event-loop
  • 讲清楚之javascript作用域
  • 盘点那些不知名却常用的 Git 操作
  • 推荐一个React的管理后台框架
  • 微信公众号开发小记——5.python微信红包
  • 从如何停掉 Promise 链说起
  • ​马来语翻译中文去哪比较好?
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • $.ajax()参数及用法
  • %3cli%3e连接html页面,html+canvas实现屏幕截取
  • (35)远程识别(又称无人机识别)(二)
  • (4.10~4.16)
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (转)ORM
  • (转)Sql Server 保留几位小数的两种做法
  • (自用)网络编程
  • ***利用Ms05002溢出找“肉鸡
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET Compact Framework 多线程环境下的UI异步刷新
  • .net Stream篇(六)
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .net 设置默认首页
  • .NET 中 GetHashCode 的哈希值有多大概率会相同(哈希碰撞)
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)