之前使用过XPath爬虫、正则表达式爬虫获取我们想要的内容,Beautiful Soup也是一种爬虫,解析HTML/XML文档,但是使用方法会比之前的简单。
首先还是安装库,这里安装的是 bs4 ,Beautiful Soup类就在这个模块里面。
目录
标签获取
首先看一看类方法获取到的文本样式:
from bs4 import BeautifulSoup text = ''' <?xml version="1.0" encoding="utf-8"?> <bookstore> <book> <title lang="en">Lonely</title> <price>20</price> </book> <book> <title lang="ch">活着</title> <price>30</price> </book> </bookstore> ''' soup=BeautifulSoup(text) #创建一个BeautifulSoup对象 print(soup.prettify()) #按照缩进格式进行输出
将获得的文本使用类方法进行输出,便于直观的看到里面的内容以及从属关系。
获取XML文档中的文本内容:
print(soup.getText()) #获取文本内容
获取文档里面的标签以及各种内容(以title标签举例):
print(soup.title) #获取一个标签 print(soup.title.name) #获取标签名字 print(soup.title.attrs) #获取标签属性,返回值是字典 print(soup.title['lang']) #获取属性的值 print(soup.title.string) #获取标签里的文本
在运行的结果中会提示你一些关于编译器的警告,可以忽略不计。