安装
pip install BeautifulSoup
安装小试
>>> import requests
>>> r = requests.get("https://www.python123.io/ws/demo.html")
>>> demo = r.text
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup(demo, "html.parser")
>>> print(soup.prettify())
BeautifulSoup库的基本元素
###BeautifulSoup库的理解
html
文件结构:由一组尖括号构成的标签组织起来,形成的标签树的形式。
<html>
<body>
<b><!--This is a comment--></b><p calss="title">...</p>
</body>
</html>
BeautifulSoup库是解析、遍历、维护“标签树”的功能库。
BeautifulSoup库的引用
from bs4 import BeautifulSoup
##BeautifulSoup库解析器
BeautifulSoup类的基本元素
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup(demo, "html.parser")
>>> print(soup.prettify())
#获取a标签的名字
>>> soup.a.name
'a'
>>> soup.a.parent.name
'p'
>>> soup.a.parent.parent.name
'body'
#获得a标签的属性,是一个字典类型
>>> tag = soup.a
>>> tag.attrs
{'href': 'http://www.icourse163.org/course/BIT-268001', 'class': ['py1'], 'id': 'link1'}
#获得class属性的值
>>> tag.attrs['class']
['py1']
#查看标签的类型
>>> type(tag)
<class 'bs4.element.Tag'>
基于bs4库的HTML内容遍历方法
标签树的下行遍历
标签树的上行遍历
标签树的平行遍历
基于bs4库的HTML的格式输出
prettify()方法
“友好”的输出HTML文本
>>> print(soup.prettify())