利用Python网络爬虫采集天气网的实时信息—BeautifulSoup选择器-阿里云开发者社区

开发者社区> 开发与运维> 正文

利用Python网络爬虫采集天气网的实时信息—BeautifulSoup选择器

简介:         相信小伙伴们都知道今冬以来范围最广、持续时间最长、影响最重的一场低温雨雪冰冻天气过程正在进行中。预计,今天安徽、江苏、浙江、湖北、湖南等地有暴雪,局地大暴雪,新增积雪深度4~8厘米,局地可达10~20厘米。
img_b58ad4ec6efc7a029758c4141c224304.jpe

        相信小伙伴们都知道今冬以来范围最广、持续时间最长、影响最重的一场低温雨雪冰冻天气过程正在进行中。预计,今天安徽、江苏、浙江、湖北、湖南等地有暴雪,局地大暴雪,新增积雪深度4~8厘米,局地可达10~20厘米。此外,贵州中东部、湖南中北部、湖北东南部、江西西北部有冻雨。言归正传,天气无时无刻都在陪伴着我们,今天小编带大家利用Python网络爬虫来实现天气情况的实时采集。

img_94815d7b72f34c9963af47612ba22f20.jpe

        此次的目标网站是绿色呼吸网。绿色呼吸网站免费提供中国环境监测总站发布的PM2.5实时数据查询,更收集分析关于PM2.5有关的一切报告和科研结论,力求以绵薄之力寻同呼吸共命运的你关注PM2.5,关注大气健康!

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

img_f0a7a56b1a40c0884080a2358a871300.jpe
绿色呼吸网天气信息

在网页源码中,目标信息存在的位置如下图所示:

img_0f392d2c4dd963028d4b82ad9a159a5f.jpe
部分网页源码

        在开发工具pycharm中进行代码实现,难点在于BS4选择器的语法。有个细节需要注意,部分城市在当天是没有污染物的,因此在网页中wuranwu这个属性没有任何显示,此时应该介入if判断语句,避免获取的数据为空导致程序报错,也可以做异常处理来解决这个问题。其中部分关键代码如下图所示:

img_246121efa5deb69cede04638643cccbe.jpe
在开发工具pycharm中进行代码实现

        只要我们右键点击运行,在控制台中输入我们所关注城市的汉语拼音,便可以在pycharm的控制台中可以看到该地区的实时天气信息,而且还有温馨提示,是不是很方便呢?

        最近天寒地冻的,小编建议大家注意出行安全,出行优先乘坐公共交通工具,尽量少开车、不开车。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章