使用BeautifulSoup和Matplotlib实现网页数据可视化

2023-07-30 16:01:17 数据 网页 可视化

使用BeautifulSoup和Matplotlib可以将网页中的数据提取出来,并以可视化的方式展示出来。下面是使用Python编写的简单示例代码:

首先,需要安装必要的库:

pip install beautifulsoup4
pip install matplotlib

在代码中导入需要的库:

import requests
from bs4 import BeautifulSoup
import matplotlib.pyplot as plt

首先,利用requests库向指定的网页发送请求,获取网页内容:

url = 'https://pidancode.com'
response = requests.get(url)

然后,使用BeautifulSoup对网页内容进行解析,获取网页中的需要可视化的数据:

soup = BeautifulSoup(response.text, 'html.parser')
# 获取页面中所有h2标签的文本内容
headers = [header.get_text() for header in soup.find_all('h2')]
# 获取页面中所有p标签的文本内容
paragraphs = [p.get_text() for p in soup.find_all('p')]

获取到数据后,利用Matplotlib进行可视化的处理。

例如,我们可以使用柱状图展示h2标签的出现次数:

header_freq = {header: headers.count(header) for header in headers}
plt.bar(header_freq.keys(), header_freq.values())
plt.xticks(rotation=45)
plt.show()

我们也可以使用饼图展示文章中各个段落的相对长度:

paragraph_len = [len(p) for p in paragraphs]
plt.pie(paragraph_len, labels=paragraphs, autopct='%1.1f%%')
plt.show()

通过这样的方式,我们可以将网页中的数据快速可视化,更加直观地了解网页的内容。

相关文章