一、安装
通过命令:pip3 install Beautifulsoup4;
安装后运行:from bs4 import BeautifulSoup,没有报错,说明安装正常;
二、解析库
Beautifulsoup有四种解析方法:
1、BeautifulSoup(markup,"html.parser") 解析速度适中,文档容错能力强
2、BeautifulSoup(markup,"lxml") 解析速度快,文档容错能力强,但是需要安装C语言库
3、BeautifulSoup(markup,"xml") 解析速度快,唯一支持XML的解析器,但是需要安装C语言库
4、BeautifulSoup(markup,"html5lib") 最好的容错性,以浏览的方式解析文档,生成HTML5格式的文档,但是解析速度慢
三、基本使用
使用type查看获取tag的类型发现,每个标签的类型都是<class 'bs4.element.Tag'>,也就是说通过soup.title这样的形式获取的类型都是Tag类型;
四、常用标签选择器
1、选择元素:与HTML中的标签一样,直接获取对应名称;
2、获取名称:通过name属性,可以直接获取到标签的名称;
3、获取属性:通过attrs属性获取属性值,或者直接获取属性值;
4、获取内容
5、嵌套选择
6、子节点:代码中存在层级结构
contents属性:返回形式是列表形式;
children属性:返回形式是列表类型,需要通过迭代的方式将里面数据取出(使用enumerate属性);
descendants属性:返回形式也是列表类型,但是会将标签页下面的所有节点返回(使用enumerate属性);
7、父节点:父节点类型是Tag类型;
8、兄弟节点:
next_siblings:获取下面的兄弟节点;
previous_siblings:获取前面的兄弟节点;
五、文档树搜索
1、find_all(name, attrs, recursive, text, **kwargs):根据标签名,属性,内容进行查找,返回所有元素;
name:根据标签名查找标签,返回查找的所有元素
attrs:根据属性名进行查找,返回所有元素(注:使用class进行查找元素,因为class在Python中相当于一个关键字,不能当做参数进行使用,需要使用class_当做参数进行使用)
text:根据内容进行查找,返回所有元素
2、find(name, attrs, recursive, text, **kwargs):根据标签名,属性,内容进行查找,返回单个元素;
六、CSS选择器
通过select()直接传入CSS参数即可;
1、获取属性:
2、获取内容:

Beautiful用法总结的更多相关文章

  1. Python之Beautiful Soup的用法

    1. Beautiful Soup的简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据.官方解释如下: Beautiful Soup提供一些简单的.pyt ...

  2. Python爬虫利器二之Beautiful Soup的用法

    上一节我们介绍了正则表达式,它的内容其实还是蛮多的,如果一个正则匹配稍有差池,那可能程序就处在永久的循环之中,而且有的小伙伴们也对写正则表达式的写法用得不熟练,没关系,我们还有一个更强大的工具,叫Be ...

  3. python beautiful soup库的超详细用法

    原文地址https://blog.csdn.net/love666666shen/article/details/77512353 参考文章https://cuiqingcai.com/1319.ht ...

  4. python爬虫(7)--Beautiful Soup的用法

    1.Beautiful Soup简介 简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据. Beautiful Soup提供一些简单的.python式的函数用来 ...

  5. Beautiful Soup库基础用法(爬虫)

    初识Beautiful Soup 官方文档:https://www.crummy.com/software/BeautifulSoup/bs4/doc/# 中文文档:https://www.crumm ...

  6. Beautiful Soup的用法

    BEAUTIFUL SOUP的介绍 就是一个非常好用.漂亮.牛逼的第三方库,是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖析树(parse tree). 它提供简 ...

  7. python 爬虫5 Beautiful Soup的用法

    1.创建 Beautiful Soup 对象 from bs4 import BeautifulSoup html = """ <html><head& ...

  8. Python爬虫利器之Beautiful Soup,Requests,正则的用法(转)

    https://cuiqingcai.com/1319.html https://cuiqingcai.com/2556.html https://cuiqingcai.com/977.html

  9. Beautiful Soup的用法(五):select的使用

    原文地址:http://www.bugingcode.com/blog/beautiful_soup_select.html select 的功能跟find和find_all 一样用来选取特定的标签, ...

随机推荐

  1. Ansible小记

    参考网址: https://www.iyunv.com/thread-385359-1-1.html http://blog.51cto.com/215687833/1886305

  2. ElementUI DatePicker 日期选择器控制选择时间范围

    选择今天以及今天之后的日期 <el-date-picker v-model="value1" type="date" placeholder=" ...

  3. Fiddle Proxy

    1.抓包原理 Fiddler是类似代理服务器的形式工作,它能够记录所有你的电脑和互联网之间的http(S)通讯,可以查看.修改所有的“进出”的数据.使用代理地址:127.0.0.1, 默认端口:888 ...

  4. pip模块

    pip模块 Usage: pip <command> [options] Commands: install Install packages. download Download pac ...

  5. 【LOJ#3097】[SNOI2019]通信(费用流)

    [LOJ#3097][SNOI2019]通信(费用流) 题面 LOJ 题解 暴力就直接连\(O(n^2)\)条边. 然后分治/主席树优化连边就行了. 抄zsy代码,zsy代码是真的短 #include ...

  6. luogu4055 游戏 (二分图博弈)

    考虑对非障碍的点黑白染色然后做二分图最大匹配,那么有结论,先手必胜当且仅当不是完美匹配,而且可以放的点是那些可以不匹配的点 从非匹配点开始走,后手只能走到匹配点,于是先手就可以走匹配边.由于不能走走过 ...

  7. Day050--jQuery表单事件 轮播图 插件库 ajax

    表单控件的事件 change()表单元素发生改变时触发事件 select()文本元素发生改变时触发事件 submit()表单元素发生改变时触发事件 .focus() 获取焦点 .blur() 释放焦点 ...

  8. application对象的应用案例

    application对象由多个客户端用户共享,它的应用范围是所有的客户,服务器启动后,新建一个application对象,该对象一旦建立,就一直保持到服务器关闭.当有客户访问服务器上的一个JSP页面 ...

  9. ES 常用的查询语句介绍

    elasticsearch定义了两种查询方式: 一.索引(index).type.document 相关语句 1.列出所有索引的状态 GET /_cat/indices?v health status ...

  10. Linux性能优化实战:系统的swap变高(09)

    一.实验环境 1.操作系统 root@openstack:~# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu ...