利用Python爬虫与BeautifulSoup实时采集天气及空气质量数据

栗子
栗子
发布时间:2026-10-14| 3人浏览过
原创

本文介绍如何使用Python网络爬虫结合BeautifulSoup库,从绿色呼吸网实时采集天气与空气质量数据。教程涵盖目标网站分析、网页源码定位、关键代码实现及异常处理机制,重点解决部分城市无污染物数据显示时的空值问题。通过PyCharm运行程序,用户可输入城市拼音获取实时AQI、首要污染物及温馨提示,实现便捷的天气信息监控。

背景介绍与爬虫目标

今冬以来范围最广、持续时间最长、影响最重的低温雨雪冰冻天气过程正在持续。预计今日安徽、江苏、浙江、湖北、湖南等地将出现暴雪,局部地区甚至有大暴雪,新增积雪深度预计在4~8厘米之间,局部地区可达10~20厘米。此外,贵州中东部、湖南中北部、湖北东南部以及江西西北部地区存在冻雨现象。本文将重点介绍如何利用Python网络爬虫技术,实现对这些实时天气情况的自动化采集。

本次爬虫的目标网站为绿色呼吸网。该网站免费提供中国环境监测总站发布的PM2.5实时数据查询服务,并收集与分析关于PM2.5的相关报告及科研结论,旨在呼吁公众关注PM2.5及大气健康问题。

数据采集技术与页面分析

程序实现过程相对简单,本次选用BeautifulSoup选择器来匹配目标信息,包括地区、时间、AQI指数、首要污染物、PM2.5浓度以及温馨提示等字段。需要采集的页面内容结构如下图所示:

绿色呼吸网天气信息展示界面

在网页源码中,目标数据存在的具体位置如下图所示:

部分网页源码结构展示

代码实现与异常处理

在PyCharm开发工具中进行代码实现时,主要难点在于BS4选择器的语法应用。需要特别注意一个细节:部分城市在当天可能没有污染物数据,因此在网页源码中“wuranwu”属性不会显示。此时应引入if判断语句,或者采用异常处理机制,以避免因获取数据为空而导致程序报错。部分关键代码实现如下图所示:

在PyCharm开发工具中的代码实现过程

程序运行与结果展示

完成代码编写后,只需右键点击运行,在控制台输入所关注城市的汉语拼音,即可在PyCharm的控制台中查看该地区的实时天气信息,包括温馨提示,操作十分便捷。

以上就是本文的全部内容,希望对读者的学习有所帮助,也欢迎大家继续支持本站。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。