Beautiful Soup的安装:cmd- pip install beautifulsoup4
安装小测:
1.找到目标URL https://python123.io/ws/demo.html 按下F12或查看原代码即可得到页面的代码。或者采用requests库获得原代码:
import requests
>>> r=requests.get("https://python123.io/ws/demo.html")
>>> r.text
>>> demo = r.text #demo为变量
2.解析
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup(demo,'html.parser') # html.parser 为demo的网页解释器
>>> print (soup.prettify())
在这里插入代码片
结果如下:
Beautiful Soup库的理解
Beautiful Soup对应一个HTML/XML文档的全部内容。HTML文档与标签树,Beautiful Soup类相对应。
属性是来定义标签的特点的,键值对组成。
Beautiful Soup解析器
Beautiful Soup类的基本元素
Tag标签
最基本的信息组织单元,分别用<>和</>表明开头和结尾
>>>soup.title #打印源码中<title>,</title>标签中的内容
<title>This is a python demo page</title>
>>> tag = soup.a #<a>,</a>标签中的内容赋给tag变量
>>> tag #打印tag及<a>,</a>标签中的内容
<a class="py1" href="http://www.icourse163.org/course/BIT-268001" id="link1">Basic Python</a>
在这里插入代码片
任何存在于HTML语法中的标签都可以用soup.访问获得。
当HTML文档中存在多个相同对应内容时,soup.返回第一个
tag的name
格式:.name
tag的attr(属性)
attributes:标签的属性,字典形式组织。格式:.attrs
一个可以有0或多个属性,字典类型
tag的NavigableString
NavigableString:标签内非属性字符串。格式.string
注:NavigableString可以跨越多个层次
tag的Comment
comment:标签内字符串的注释部分,一种特殊的Comment类型
注:<! 表示注释开始