文章目录前言:
BeautifulSoup库除了支持
Python标准
库中的HTML
解析器外,还支持一一些第三方的
解析器。如下表中列出了
BeautifulSoup 库的主要
解析器及相应的优缺点。爬取小猪短租房信息代码实现:
BeautifulSoup库是一个非常流行的
Python模块。通过
BeautifulSoup库可以轻松地
解析Requests
库请求的网页,并把网页源代码
解析为Soup文档,以便过滤提取数据。
import requests
from bs4 import
BeautifulSoup
Beautiful Soup是python的另一个HTML或XML解析库,可以很方便的提取网页中的数据,利用它可以省去很多繁琐的提取工作,提高了解析效率。
首先从一个实例出发:
html = """
<html><head><title>The Dormoues's story</title></head>
<body>...
BeautifulSoup库详解及运用BeautifulSoup是灵活又方便的网页解析库,处理高效,支持多种解析器,利用它不用编写正则表达式即可实现网点信息的提取。解析库各个解析库的比较:
劣势 Python标准库
BeautifulSoup(markup, “html.parser”)
Python的内置标准库、执行速度适中 、文档容错能力强
使用BeautifulSoup解析HTML文档的基本步骤如下:
1. 导入BeautifulSoup库:首先需要导入BeautifulSoup库,可以使用以下代码实现:
```python
from bs4 import BeautifulSoup
2. 读取HTML文档:使用Python的文件操作或者第三方库(如requests)读取HTML文档,将其存储为字符串。
3. 创建BeautifulSoup对象:使用BeautifulSoup库的构造函数,将HTML文档字符串作为参数,创建BeautifulSoup对象。
```python
soup = BeautifulSoup(html_doc, 'html.parser')
4. 解析HTML文档:使用BeautifulSoup对象提供的方法,对HTML文档进行解析,获取需要的信息。
- 标签选择器:使用标签名称获取标签元素。
```python
soup.find('tag_name')
- 属性选择器:使用标签属性获取标签元素。
```python
soup.find('tag_name', attrs={'attr_name': 'attr_value'})
- CSS选择器:使用CSS选择器获取标签元素。
```python
soup.select('css_selector')
5. 提取信息:使用BeautifulSoup对象提供的方法,从标签元素中提取需要的信息。
- 获取标签文本内容:使用`.text`属性获取标签的文本内容。
```python
tag.text
- 获取标签属性值:使用`.get()`方法获取标签的属性值。
```python
tag.get('attr_name')
以上就是使用BeautifulSoup解析HTML文档的基本步骤。